

创建删除用户,改密,授于连接与操作数据库等各权限
注:默认创建的新用户是没有权限的,连登录权限都没有,它下面也没有任何表。
一、创建,删除用户,修改密码等
注:创建用户 需要有dba(数据库管理员)权限, 如system用户,首先切换为管理员用户
1.创建一个用户:例:create user xiaoming identified by m123; 注:m123是密码,密码必须以字母开头,identified by同create user是关键字
2.修改用户密码:password xiaoming 回车,输入新口令
3.删除某用户:drop user 用户名 [cascade] //加cascade是级连删除,删除用户所创建的用户也被删除了
二、用户赋权限需要了解的基础概念
1.赋权需要有sys和system权限,oracle大概有140余种权限
2.权限分系统权限和对象权限
1)系统权限指用户对数据库相关权限,如建表,视图,改密码 ,包括,create session
2)对象权限指用户对其它用户的数据对象操作的权限包括(select,insert,update,delete,all(含前四种权限),create....)
3.角色:事先定义了一个或多个系统或对象权限就是一个角色,有点像权限组,好处是可以直接给用户赋于角色,而不用每个去赋权限。
角色分预定义与自定义两种。
connect角色(有连接数据库权限) resource角色(有在任何表空间建表权限),DBA角色(数据库管理员,包括connect,resource两角色的权限)
特别说明:数据库不只包括表,还包括视图,存储过程,包,触发器,序列等数据对象
三、授权用户连接数据库,建表系统权限与授于用户查询,修改,插入,删除数据对象权限的例子
(注:自己不能授于或收回自己的权限,需要切换有权限的用户,收加权限也是谁授于谁收回)
1.授权xiaoming用户连接数据库:grant connect to xiaoming; //这里的connect是一个定义了多种权限的角色
2.授权该用户拥有建表的权限:grant resource to xiaoming; //这resource也是一个角色,详见二的基础概念
建表:create table (testuserId varchar2(30),userName varchar2(30))
3.授权xiaoming用户查询有scott用户的emp表权限(需要用能访问emp表的用户赋于对象权限):grant select on emp to xiaoming
注:授权的表查询时需要在表名前加用拥有者用户名,例:select * from scott.emp 注:这里的scott叫方案,表是scott用户的表
4.授权该用户可修改表emp:grant update on emp to xiaoming
5.授权xiaoming拥有表emp所有对象权限:grant all on emp to xiaoming
四、收回授于的对象权限
收回xiaoming对emp表的查询权限:revoke select on emp from xiaoming