您的位置:首页 > 数据库 > Oracle

oracle 11g 学习笔记 2012_10_24(1)

2012-10-24 18:21 453 查看
今天看着视频学oracle 发现效果不错。。。

oracle 用户管理:



oracle用户管理是oracle数据库一个重要和核心的内容。

.创建用户

在oracle中要创建一个新的用户可以使用 create user 语句。一般是具有dba(数据管理员)的

权限才能使用,比如是:sys、system用户。一般

用户不可以。

创建的新用户是没有任何权限的,甚至是连登录的数据库权限都没有。

sql> create user user_name indentified by password; //(密码得要以字母开头)

.给用户修改密码

要是给自己修改密码,可以直接使用

SQL> password
如果是给别人修改密码则需要有具有dba的权限,或者是拥有 alter user 的系统权限。

sql> alter user 用户名 identified by 新密码;
.删除用户

删除用户一般也是用dba这个身份去删除,但是不可以删除自己。

在删除用户时,注意如果要删除的用户已经创建了表,那么就需要在删除语句的最后添加上一个

参数 cascade, 那么就可以同时删除那些表了。

sql> drop user 用户名 [ cascade]
.用户管理的综合案例

概述:新创建的用户是没有任何权限的,甚至是连登录数库的权限都没有,需要为其指定相应的权限,

给一个用户赋权限可以用 grant,回收该权

限使用命令 revoke。

新用户连数据库都连接不了,那么就要找人来给它赋权限了。可以是system、sys,但是普通用户是不

可以给他赋权限的。比如scott。

比如 pangzi 是新创建的用户;要赋予它连接数据库的权利,则可以在sys用户下运行语句:

sql> grant connect to pangzi;
准确地讲,connect to 不是权限,而是角色。

dba 角色,不要轻易授权,它含有的权利很大,要是把它授权给了一个普通用户,那么该用户就用户就拥有

了dba所有的权限。

resource 角色,可以让pangzi这个用户在任何一个表空间建表。

.scott希望 pangzi可以创建表

.希望 pangzi 可以去查询scott的emp表;

.希望 pangzi 可以修改 scott的emp表;

.希望 pangzi 可以修改、查询、添加、删除scott的emp表。只是这个表。

resource 角色,可以让pangzi这个用户在任何一个表空间建表。

.scott希望 pangzi可以创建表

.希望 pangzi 可以去查询scott的emp表;

.希望 pangzi 可以修改 scott的emp表;

.希望 pangzi 可以修改、查询、添加、删除scott的emp表。只是这个表。

sql> grant resource on scott.emp to pangzi;
sql> grant select on scott.emp to pangzi;
sql> grant update on scott.emp to pangzi;
sql> grant all on scott.emp to pangzi;


可以授权的用户:自己的东西可以授权给别人,还有sys、system;自己没有的东西不能自己授权给自己。

.权限的收回

要是已经授权了 pangzi 一些权限,而现在想收回这些权限的话,可以用 revoke语句。

要是 a 用户没有授予权限给 b 用户,那么 a 就没有权利收回 b拥有的权限。即使 a 用户是 sys 和 system 用户。

.scott希望收回 pangzi 对emp表的查询权限。

sql> revoke select on emp from pangzi;


//对权限的维护

.希望 pangzi 可以去查询scott的emp表;/还希望 pangzi 可以把这个权限继续传给别人。那么就可以用

----如果是对象权限,就加入with grant option------那么这样pangzi就可以继续把权限授予给其他用户了。

sql> grant select on emp to pangzi with grant option


----如果是系统权限。

system 给 pangzi 权限时:

sql> grant connect to pangzi with admin option;


?.那么要是 a 授予了 b 权限,而 b 授予了 c 权限,当 a 要收回 b 权限时...

b 和 c 的权限都会被收回,因为要是 c 的权限还有,那么就可以再把权限授予 b ,那就没有了意义了,安全性也

会变差了( a 可能就是不信任 b 才把权限收回的。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: