1、在使用oracle数据库的时候,权限是极其重要的,如果新建的用户如果没有权限,甚至都无法登录数据库,如下图。
目前成都创新互联公司已为数千家的企业提供了网站建设、域名、网页空间、网站运营、企业网站设计、威远网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
2、为新建用户分配权限主要有三种connect 主要使用是让用户可以连接到数据库。
3、resource 主要使用是让用户可以创建表dba 它是一种比较特殊的权限,普通用户拥有之后可以成为数据库管理者。
4、select update deleteinsert all 也就是拥有用户对某张表有查询、更改、删除、插入及所有权限。
5、如果想要查询用户的权限可以通过下图中的方法进行查询。
"ORACLE数据字典视图的种类分别为:USER,ALL 和 DBA.
USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上
其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
(这里的*可以为TABLES,INDEXES,OBJECTS,USERS等。)
1、查看所有用户
select * from dba_user;
select * from all_users;
select * from user_users;
2、查看用户系统权限
select * from dba_sys_privs;
select * from all_sys_privs;
select * from user_sys_privs;
3、查看用户对象权限
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
4、查看所有角色
select * from dba_roles;
5、查看用户所拥有的角色
select * from dba_role_privs;
select * from user_role_privs;
6、查看当前用户的缺省表空间
select username,default_tablespace from user_users;
7、查看某个角色的具体权限
如grant connect,resource,create session,create view to TEST;
8、查看RESOURCE具有那些权限
用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE
"
例如:要查看 scott 具有的角色,可查询 dba_role_privs;
SQL select * from dba_role_privs where grantee='SCOTT';
//查询 orale 中所有的系统权限,一般是dba
select * from system_privilege_map order by name;
//查询 oracle 中所有对象权限,一般是dba
select distinct privilege from dba_tab_privs;
//查询 oracle 中所有的角色,一般是dba