第05讲.oracle用户管理综合案例

第05讲.oracle用户管理综合案例

删除用户

概述:一般以dba的身份去删除某个用户,如果用其它用户去删除用户则需要具有 drop user的权限。

比如:drop user 用户名 [cascade]

当我们删除一个用户的时候,如果这个用户自己已经创建过数据对象,那么我们在删除用户的时候,需要加选项 cascade,表示把这个用户删除同时,把该用户的数据对象一并删除。


用户管理的综合案例

概述:创建的新用户是没有任何权限的,甚至连登录的数据库的权限都没有,需要为其指定相应的权限。给一个用户赋权限使用命令grant,回收权限使用命令 revoke。

基本语法:grant 权限/角色 to 用户

为了给讲清楚用户的管理,这里我给大家举一个案例。

创建一个用户 xiaohong,然后给她分配两个角色,可以让 xiaohong 登录,创建表,可以操作(crud)自己创建的表,然后回收角色,最后删除用户。

1)使用 system 创建 xiaohong

  • create user xiaohong identified by m123;

2)给 xiaohong 分配两个常用角色

  • grant connect to xiaohong;
  • grant resource to xiaohong;

3)让 xiaohong 登录

  • connect xiaohong/m123

4)xiaohong 修改密码

  • password xiaohong

5)xiaohong 创建一张最简单的表

  • create table users(id number);
  • insert into users values(1);
  • select * from users;

6)使用 system 登录,然后回收角色

  • revoke connect from xiaohong;
  • revoke resource from xiaohong;

7)删除用户

  • drop user xiaohong cascade;

方案(schema)

理解:当一个用户创建好后,如果该用户创建了任意一个数据对象,这时,我们的DBMS就会创建一个对应的方案与该用用户对应,并且该方案的名字和用户名一致。


方案这个概念的实际运用

要求:让 xiaohong 用户可以去查询 scott 的 emp 表

1)先用 scott 登录

  • conn scott/tom

2)赋予权限

  • grant select[update|delete|insert|all] on emp to xiaohong;

xiaohong 查询 scott 的 emp 表时,需要

  • select * from scott.emp;
原文地址:https://www.cnblogs.com/zhangsonghui/p/13458198.html