1.1 创建用户语句:
create user [用户名] identified by [密码];
创建后一定要给用户授权
--更改用户密码:
alter user [用户名] identified by [密码];
1.2 删除用户
Oracle数据库中默认情况下只有SYSDBA和SYSOPER用户才能执行删除用户命令。
drop user [用户名] [CASCADE|FORCE];
--当用户拥有对象时不能直接删除。CASCADE选项表示级联删除,即删除用户后,这个用户创建的对象也一并删除;FORCE参数表示强制删除用户,即无论该用户是否有创建的对象,都会被删除。
1.3 用户授权
系统默认的普通用户scott默认未解锁,不能使用,新建的用户也没有任何权限,必须授予权限。
--授予用户创建session的权限,即登陆权限,允许用户登录数据库
grant create session to [用户名];
--授予用户使用表空间的权限
grant unlimited tablespace to [用户名];
--授予创建表的权限
grant create table to [用户名];
--授予删除表的权限
grante drop table to [用户名];
--插入表的权限
grant insert table to [用户名];
--修改表的权限
grant update table to [用户名];
--创建视图的权限
grant create view to [用户名];
--!!!授予所有权限给所有用户!!!
grant all to public;
1.4 撤销用户权限
revoke connect from user [用户名];
1.5 查看用户权限
--查看指定用户的系统权限
select * from dba_role_privs where grantee=upper('[用户名]');
--查看指定用户的对象权限
select * from dba_tab_privs where grantee=upper('[用户名]');
1.6 角色
1.6.1 三种标准角色
CONNECT角色: 是授予最终用户的,最基本的权力,能够连接到ORACLE数据库中,并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
RESOURCE角色: 是授予开发人员的,能在自己的用户下创建表、序列、视图等。
DBA角色: 是授予系统管理员的,拥有所有的系统权限
--将标准角色授权给用户语法:
grant connect,resource to [用户名];
--撤销授权:
revoke connect,resource from [用户名];
1.6.2 创建/授权/删除角色
--创建角色
create role [角色名];
--授权给角色
--将创建session的权限授予角色
grant create session to [角色名];
--将创建的角色授权给用户
grant [角色名] to [用户名];
--删除角色
drop role [角色名];
1.7 权限查询
--查看指定用户有哪些系统权限
select * from dba_role_privs where grantee=upper('[用户名]');
--查看指定用户有哪些对象权限
select * from dba_tab_privs where grantee=upper('[用户名]');