Oracle11g用户管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一部分用户账户与权限

再讲之前先考虑一个问题,如果现在使用oracle数据库的时候忘记了密码怎么办?

可能有同学想到可以用sys用户找回密码,如果连sys用户密码都忘了呢?

还有什么办法吗?

1、数据库中存在的用户具有OPEN,LOCK,EXPIRE三种状态,查看当前的数据库已经启用的(OPEN)用户情况使用表dba_users

2、创建用户的基本命令:

create user 新的用户名 identified by密码;

创建一个test1的用户,密码为123

create user test1 identified by 123;

用户创建好了,大家试一下用新用户登陆数据库是否可以?

3、授予用户权限的命令:

grant 权限名/角色名 to 用户;

将create session的权限给test1用户

grant create session to test1;

4、修改用户密码命令:

alter user 用户名 identified by 新密码;

将用户test1的密码由123改为test1;(想一下谁有权利改?)

alter user test1 identified by test1;

5、设置用户密码过期命令:

alter user 用户名 password expire;

将用户test1的密码设置为过期状态,使用dba_tables查看一下当前账户的状态,现在test1使用test1的密码还能登陆吗,出现什么现象?

alter user test1 password expire;

6、设置用户锁定/解锁:

alter user 用户名 account lock/unlock;

将用户test1设置锁定,使用test1还能登陆吗?

alter user test1 account lock;

7、解锁test1用户,使用test1登陆,创建一张表:

create table mytab(

id number,

name varchar2(50));

可以创建吗?

8、为用户授与相关的权限:

grant 权限名 to 用户;

为用户授予创建表的权限:

g rant create table to test1;

再试一下可以创建表了吗?

9、使用test1用户查询一下scott用户下的emp表的ename,empno,job列:

s elect ename,empno,job from emp;

可以吗?

select ename,empno,job from scott.emp;

这样可以吗?

10、为用户test1授予查询scott.emp表的权限(使用sys用户授予)

grant select on scott.emp to test1;

试一下可以使用用户test1往scott.emp插入数据吗?

主要权限:insert、delete、update、select

grant select,insert on scott.emp to new;

11、回收test1用户的查询、插入scott.emp表的权限

revoke select,insert on scott.emp from new;

12、删除用户

drop user new cascade;(级联删除)

13、通过以上命令可以看出,创建一个用户再为这个用户授予相关的权限是比

较复杂的,所以oracle中引入了角色的概念,只要创建一个用户后将相应的权

限授予这个用户即可。

新建一个用户test2/123,为用户授予connect和resource权限:

create user test2 identified by 123;

grant connect,resource to test2;

现在试一下使用test2用户是否可以登录、创建表呢?

预定义角色

预定义角色是指Oracle所提供的角色,每种角色都用于执行一些特定的管理任务,下面我们介绍常用的预定义角色connect,resource,dba。

connect角色

connect角色具有一般应用开发人员需要的大部分权限,当建立了一个用户后,

多数情况下,只要给用户授予connect和resource角色就够了,那么connect角

色具有以下系统权限:

alter session

create cluster

create database link

create session

create view

create sequence

resource角色

resource角色具有应用开发人员所需要的其他权限,比如建立存储过程、触发器

等。这里需要注意的是resource角色隐含了unlimited tablespace系统权限。

resource角色包含以下系统权限:

create cluster

create indextype

create table

create sequence

create type

create procedure

create trigger

dba角色

dba角色具有所有的系统权限,及with admin option选项,默认的dba用户为sys和system他们可以将任何系统权限授予其他用户。但是要注意的是dba角色不具备sysdba和sysoper的特权(启动和关闭数据库)。

如果要了解用户拥有哪些角色,以及角色中包含哪些权限,可以查看表中所示的数据字典视图。

相关文档
最新文档