数据库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
上一篇: 滴水逆向——PE扩大一个节
下一篇: 奔跑吧linux内核-物理内存初始化