用户名:  密码:   
您当前的位置:首页 > SQL数据库 >  Oracle > 

第4讲 创建删除用户,改密,授于连接与操作数据库等各权限

上次修改时间: 2015-10-09 16:17:56      来源:网络总结      作者:钢铁长陈
上一页      路径:DSD\Learn\SQL数据库相关\Oracle数据库学习\韩顺平.玩转oracle教程笔记1_30讲\      下一页

创建删除用户,改密,授于连接与操作数据库等各权限
注:默认创建的新用户是没有权限的,连登录权限都没有,它下面也没有任何表。

一、创建,删除用户,修改密码等
注:创建用户 需要有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