数据库同一个库上面,不同用户相互赋予权限
2012-04-11 15:16
399 查看
用法:
有两个用户:user1和user2,都是在库TEST上,分别有表user1.table1,user2.table2
但是用user1登录的时候,user2上表就不能用,此时就可以使用grant命令了:
GRANT privilege [, ...] ON object [, ...] TO { PUBLIC | GROUP group | username }
如 grant insert,update,delete on user2.bable2 to user1 此时,user1用户就可以操作user2用户的table2表了,
如 在user1下,select * from user2.table2
进阶:
不同库
命令格式
grant 权限 on 数据库名.表名 to 用户名@登陆方式 identified by 'password1';
revoke的作用则是回收授于用户的权限
命令格式为:
revoke 权限 on 数据库名.表名 from 用户名@登陆方式;
查看权限:
ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。
USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
(这里的*可以为TABLES,INDEXES,OBJECTS,USERS等。)
1.1查看所有用户
1.select * from dba_user;
2.select * from all_users;
3.select * from user_users;
1.2查看用户系统权限
1.select * from dba_sys_privs;
2.select * from all_sys_privs;
3.select * from user_sys_privs;
1.3查看用户对象权限
1.select * from dba_tab_privs;
2.select * from all_tab_privs;
3.select * from user_tab_privs;
1.4.查看所有角色
1.select * from dba_roles;
1.5.查看用户所拥有的角色
1.select * from dba_role_privs;
2.select * from user_role_privs;
1.6.查看当前用户的缺省表空间
1.select username,default_tablespace from user_users;
1.7.查看某个角色的具体权限
1.如grant connect,resource,create session,create view to TEST;
2.查看RESOURCE具有那些权限,
3.用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';
有两个用户:user1和user2,都是在库TEST上,分别有表user1.table1,user2.table2
但是用user1登录的时候,user2上表就不能用,此时就可以使用grant命令了:
GRANT privilege [, ...] ON object [, ...] TO { PUBLIC | GROUP group | username }
如 grant insert,update,delete on user2.bable2 to user1 此时,user1用户就可以操作user2用户的table2表了,
如 在user1下,select * from user2.table2
进阶:
不同库
命令格式
grant 权限 on 数据库名.表名 to 用户名@登陆方式 identified by 'password1';
revoke的作用则是回收授于用户的权限
命令格式为:
revoke 权限 on 数据库名.表名 from 用户名@登陆方式;
查看权限:
ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。
USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
(这里的*可以为TABLES,INDEXES,OBJECTS,USERS等。)
1.1查看所有用户
1.select * from dba_user;
2.select * from all_users;
3.select * from user_users;
1.2查看用户系统权限
1.select * from dba_sys_privs;
2.select * from all_sys_privs;
3.select * from user_sys_privs;
1.3查看用户对象权限
1.select * from dba_tab_privs;
2.select * from all_tab_privs;
3.select * from user_tab_privs;
1.4.查看所有角色
1.select * from dba_roles;
1.5.查看用户所拥有的角色
1.select * from dba_role_privs;
2.select * from user_role_privs;
1.6.查看当前用户的缺省表空间
1.select username,default_tablespace from user_users;
1.7.查看某个角色的具体权限
1.如grant connect,resource,create session,create view to TEST;
2.查看RESOURCE具有那些权限,
3.用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';
相关文章推荐
- 一个简单的实现不同权限的用户登录后看到不同的菜单设计的数据库表清单
- 一个简单的实现不同权限的用户登录后看到不同的菜单设计的数据库表清单
- 一个简单的实现不同权限的用户登录后看到不同的菜单设计的数据库表清单
- Sql2008不同用户指定访问数据库的权限设置!
- MySQL命令行 不同端口登录 执行SQL文件 创建用户 赋予权限 修改root密码
- 烂泥:使用Navicat for SQL Server新建数据库、用户及权限赋予
- Oracle创建一个用户并赋予其他用户表的访问权限
- 数据库可以为用户设置不同的权限
- 有数据库apps权限,但是没有oracle EBS 帐户, 可以用以下方法建立一个用户使用:
- linux使用mysql给一个用户赋予一个权限
- oralce 数据库创建用户并赋予基本的权限
- 创建数据库用户,赋予访问某些表的权限
- MySQL:增加用户以及赋予不同的权限
- mysql数据库命令行将刚建的数据库的所有权限给一个先建用户
- mysql创建本地用户及赋予数据库权限的方法示例
- oracle为用户赋予各种权限,仅作为一个普通的用户
- mysql创建用户并赋予数据库权限
- 赋予一个普通用户重启apache权限
- MySQL 数据库赋予用户权限操作表
- oracle如何新建一个用户,并赋予权限啊