用户
创建用户
- 以system用户登录,创建test用户
create user test(用户名) IDENTIFIED BY test(密码)
- 用户被创建后,没有任何权限,包括登录。
给予登录权限create session
grant create session to test
赋予创建表的权限
grant create table to test
- 分配users表空间
alter user quota 10m on users
新建用户默认的表空间是users
修改密码
用户关闭数据库的状态下才能修改
alter user test identified by 新密码
- expire:设置密码过期状态,用户下次登录需要改密码
alter user 用户名 password expire
- lock:锁定状态,无法执行任何oracle操作
alter user 用户名 account lock(锁)/unlock(解锁)
删除用户
drop user 用户名 (后跟cascade删除用户下的所有对象)
系统权限
- 授予系统权限
grant create session(系统权限) to test(用户名) 后跟with admin option:允许test把该权限授予别人
使用 WITH ADMIN OPTION 选项授予的权限,在回收时候的回收策略如下:
如果A授予权限给B,B又把该权限赋予给C ,如果此时A把权限从B处收回,那么B给予出去的权限是继续保留,即C继续拥有该权限。
- 回收系统权限
revoke 系统特权 from 用户名
- 授予对象权限
把员工表的查询权限给用户
grant select(对象权限) on emp(对象) to 用户名
- 回收对象权限
revoke select(对象权限) on emp(对象) from 用户名
创建角色
create role 角色名
- 为角色授予权限
给角色授予创建序列的权限
grant create sequence(权限) to 角色名
- 通过角色为用户授权
grant 角色 to 用户
- 回收权限
回收通过角色授予的权限
revoke 角色 from 用户
回收角色的权限
revoke create sequence(权限) from 角色
删除角色
drop role 角色
public
屏幕快照 2017-12-14 下午10.13.36.png