数据库Oracle Review SectionⅡ Oracle用户管理

创建表空间

安装完数据库后,会自动创建一些表空间如:SYSTEM、TEMP、UNDO、USERS分别为系统表空间、临时表空间 、重做日志表空间、用户表空间(创建普通用户时默认表空间) 

创建表空间语法

/*创建数据表空间 */ 
create tablespaceuser_data 
logging datafile 'D:\oracle\oradata\Oracle9i\user_data.dbf' 
size 50m 
autoextend on 
next 50m 
maxsize 20480m 
extent management local; //此项可以不写
/*查看表空间是否创建成功*/
Select file_name,tablespace_name from dba_data_files order by  file_name;
/*查询每个用户的默认表空间 */
Select user_id,username,default_tablespace from  dba_users;
/*普通用户的默认表空间 假设已创建表空间 user_data*/
Alter database default tablespace user_data;
/*修改表空间名称*/
Alter tablespace user_datarename to  user1;
/*删除表空间*/ 
drop tablespace user1 ;
drop tablespace user1 including contents and datafiles;

Oracle 默认用户

Oracle 有几个默认的数据库用户——可通过select * from all_users查看所有用户
 

创建新用户

要连接到Oracle数据库,就需要创建一个用户帐户

每个用户都有一个默认表空间和一个临时表空间

CREATE USER命令用于创建新用户

语法

CREATE USER username IDENTIFIED BY password [DEFAULT TABLESPACE tablespace] [TEMPORARY TABLESPACE tablespace];

示例

SQL> CREATE USER philis  IDENTIFIED BY philis;
SQL> CREATE USER tea  IDENTIFIED BY tea;

授予权限

权限指的是执行特定命令或访问数据库对象的权利

权限有两种类型,系统权限和对象权限

系统权限允许用户执行某些数据库操作,如创建表就是一个系统权限

对象权限允许用户对数据库对象(如表、视图 、序列等)执行特定操作 

角色是一组相关权限的组合,可以将权限 授予角色,再把角色授予用户,以简化权限管理

系统权限

Oracle把权限进行了细分,允许用户执行某些数据库操作,主要的系统权限如:

CREATE PROCEDURE,CREATE ROLE,CREATE SEQUENCE CREATE SESSION,CREATE TABLE,CREATE TABLESPACE CREATE TRIGGER,CREATE USER,CREATE VIEW,DROP TABLESPACE,DROP USER……

示例:

SQL> grant create table to philis;
SQL> grant create session to philis;

对象权限

表对象权限包括:

Insert ,update, delete, select, index ,alter ,reference

存储过程的有:

exec

示例:

SQL> grant select on emp to philis;
SQL> grant all on emp to philis;

注意:只有表的拥有者或者有授权的人,才可以把访问该表的权限给别人

角色授权

Oracle提供了三种标准的角色(role):CONNECT、 RESOURCE和DBA, 也可以自定义角色。

CONNECT Role(连接角色):是使用Oracle的简单权限,允许用 户连接至数据库,并创建数据库对象。

RESOURCE Role(资源角色) :允许用户使用数据库中的存储空 间,更可靠和正式的数据库用户可以授予RESOURCE 角色。 RESOURCE提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。 过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。

DBA Role(数据库管理员角色) 
 

SQL> grant resource,connect to philis; SQL>create role STUDENT; --创建角色,然后给其授权
SQL> drop role STUDENT;--删除角色

管理权限

with grant option
 

SQL> connect scott/tiger;

SQL> grant all on emp to tea with grant option;
/*允许tea用户插入、删除、更新和查询scott用户emp表中的记录,并允许其将权限赋予其他用户*/

SQL> connect tea/tea;
SQL> connect tea/tea;
SQL> grant select on scott.emp to system;
SQL> connect system/manager as sysdba;

收回权限

收回部分权限:
 

Connect scott/tiger; 
Revoke select on emp from tea;

收回所有权限:

Connect scott/tiger;
Revoke all on emp from tea;

注意:看一下收回权限后,级联授权的能否收回

更改和删除用户

ALTER USER 命令可用于更改 

SQL> --修改tea用户密码 
SQL> alter user tea identified by pass; 
SQL> --给scott用户解锁unlock,上锁lock 
SQL> --需要system用户权限,oracle11g scott用户默认锁定 
SQL> alter user scott account unlock;

DROP USER 命令用于删除用户
 

SQL> DROP USER tea CASCADE;

本章总结

  • 掌握Oracle的表空间的概念
  • 掌握Oracle用户的管理方式
  • 掌握Oracle权限的管理
  • 了解角色的管理 

2018.8.26

猜你喜欢

转载自blog.csdn.net/Altr1aPendrag0n/article/details/82082608
今日推荐