一。用户管理概述:
用户
角色
权限
1.在指定区域内创建用户(表空间)
2.制定配额以限定存储的使用
3使用描述文件限制资源的使用
4通过密码鉴别用户
5通过密码鉴别用户
6通过描述文件管理密码角色
7分配权限给角色,分配角色给用户
二。数据库用户和方案
1方案就是属于某一个用户的所有对象的集合
2用户和方案名往往是通用的
3一个用户只能关联一个方案
4创建用户时系统会自动创建一个同名方案
三数据库用户账户
每个数据库用户账户具备
预定义账户:sys和system
权限 | 授权能力 | |
对象管理: | ||
CREATE [ANY] CLUSTER | 建立簇 | |
CREATE [ANY] DIRECTORY | 建立目录 | |
CREATE [ANY] INDEX | 建立索引 | |
CREATE [ANY] LIBRARY | 建立外部函数调用库 | |
CREATE [ANY] PROCEDURE | 建立过程函数和包 | |
CREATE [ANY] SEQUENCE | 建立序列 | |
CREATE [ANY] SNAPSHOT | 建立快照,用户必须有CREATE TABLE权限 | |
CREATE [ANY] SYNONYM | 建立同义词 | |
CREATE [ANY] TABLE | 建表。要求用户有表空间限额或被授予UNLIMTETABLESPACE | |
CREATE [ANY] TRIGGER | 建立触发器 | |
CREATE [ANY] TYPE | 建立抽象数据类型 | |
CREATE [ANY] VIEW | 建立视图 | |
ALTER ANY CLUSTER | 修改任何簇 | |
ALTER ANY INDEX | 修改任何索引 | |
ALTER ANY PROCEDURE | 修改任何过程 | |
ALTER ANY SEQUENCE | 修改任何序列 | |
ALTER ANY SNAPSHOT | 修改任何快照 | |
ALTER ANY TABLE | 修改任何表,同时用户能在任何模式下编译任何视图 | |
ALTER ANY TRIGGER | 允许、禁止或编译触发器 | |
ALTER ANY TYPE | 修改抽象数据类型 | |
DROP ANY CLUSTER | 删除任何簇 | |
DROP ANY DIRECTORY | 删除任何目录 | |
DROP ANY INDEX | 删除任何索引 | |
DROP ANY LIBRARY | 删除任何库 | |
DROP ANY PROCEDURE | 删除任何过程、函数和包 | |
DROP ANY SEQUENCE | 删除任何序列 | |
DROP ANY SNAPSHOT | 删除任何快照 | |
DROP ANY SYNONYM | 删除任何私有同义词 | |
DROP PUBLIC SYNONYM | 删除公共同义词 | |
DROP ANY TRIGGER | 删除任何触发器 | |
DROP ANY TYPE | 删除任何抽象数据类型 | |
DROP ANY VIEW | 删除任何视图 | |
BACKUP ANY TABLE | 执行一个增量输出 | |
COMMENT ANY TABLE | 对任何表、视图和快照加注释 | |
DROP ANY TABLE | 删除任何表 | |
LOCK ANY TABLE | 给任何表加锁 | |
SELECT ANY TABLE | 从任何表、视图和快照中选择记录 | |
INSERT ANY TABLE | 向任何表、视图中加入记录 | |
UPDATE ANY TABLE | 在任何表、视图中更新记录 | |
DELETE ANY TABLE | 在任何表、视图中删除行并Truncate任何表或簇 | |
ALTER SESSION | 修改对话参数 | |
CREATE SESSION | 与数据库连接 | |
EXECUTE ANY PROCEDURE | 执行任何过程和函数 | |
EXECUTE ANY TYPE | 使用任何抽象数据类型 | |
SELECT ANY SEQUENCE | 从序列中选择一个值 | |
数据库管理: | ||
CREATE DATABASE LINK | 建立公共数据库链接 | |
CREATE PROFILE | 为用户建立环境文件 | |
CREATE ROLE | 建立角色 | |
CREATE ROLLBACK SEGMENT | 建立回滚段 | |
CREATE TABLESPACE | 建立表空间 | |
CREATE USER | 建立新用户 | |
ALTER PROFILE | 修改存在的环境文件 | |
ALTER RESOURCE COST | 修改环境文件中指定的资源花费 | |
ALTER ANY ROLE | 修改任何角色 | |
ALTER ROLLBACK SEGMENT | 修改回滚段 | |
ALTER TABLESPACE | 修改表空间 | |
ALTER USER | 修改用户 | |
DROP PROFILE | 删除一个已存在的环境文件 | |
DROP PUBLIC DATABASE LINK | 删除一个公共数据库链接 | |
DROP ANY ROLE | 删除任何角色 | |
DROP ROLLBACK SEGMENT | 删除一个已存在的回滚段 | |
DROP TABLESPACE | 删除表空间 | |
DROP USER | 删除用户,如果该用户拥有对象,则要附加CASCADE | |
ALTER DATABASE | 发出ALTER DATABASE语句 | |
ALTER SYSTEM | 发出ALTER SYSTEM语句 | |
ANALYZE ANY | 分析任何表、簇或索引 | |
AUDIT ANY | 审查任何模式对象 | |
AUDIT SYSTEM | 审查系统对象 | |
BECOME USER | 变成另一个用户、有输入应用使用 | |
FORCE ANY TRANSACTION | 在本地数据库强制提交或回滚未确定的分布作业 | |
GRANT ANY PRIVILEGE | 授予任何系统级权限 | |
GRANT ANY ROLE | 授予任何角色 | |
MANAGE TABLESPACE | 管理表空间状态(联机/脱机及开始/结束备份状态) | |
RESTRICTED SESSION | 当用startup restrict 启动数据库后可以连接 | |
UNLIMITED TABLESPACE | 允许在任何表空间中使用无限量存储空间,这个不考虑资源限制,但不能授予角色 | |
SYSDBA | 可以像建立数据库一样执行系统管理功能(recover、startup等) | |
SYSOPER | 可以执行与数据库备份、启动/关闭有关的系统管理功能 |
create user THUMPER
identified by RABBIT
default tablespaces USERS
temporary tablespace TEMP;
由于没有指定环境文件,所以必须使用数据库的缺省环境文件。实际的环境文件名为DEFAULT;其初始设置值是设置所有资源消耗的限值为UNLIMITED
由于没有指定定额,所以用户不能在数据库中创建对象。
如下例所示,若要授予资源定额,需要使用create user或alter user命令的quota参数。授予THUMPER的定额为USERS表空间中的100MB。
alter user THUMPER quota 100M on USERS;
用户THUMPER现在可以在USERS表空间中创建最多100MB的数据段。
注意用户不需要TEMP表空间中的空间定额来为他们的查询创建临时段
除用户名外,create user命令中的全部参数都可以由alter user命令来更改。
创建用户,也可以通过Oracle DBA Studio进行,此处从略
二。删除用户
可以用drop user命令从数据库中撤消一个用户。这个命令只有一个参数——cascade,在撤消该用户之前,它撤消用户模式中的所有对象。如果用户拥有对象,就必须指定cascade以撤消用户。如:
drop user THUMPER cascade
引用被撤消的用户模式中对象的任何视图、同义词、过程、函数或数据包都被标上INVALID。如果以后用相同的名字创建另一个用户,他从具有相同名称的前任用户继承不到任何东西。
撤消用户,也可以通过Oracle DBA Studio进行,此处从略