一。用户管理概述:
用户
角色
权限
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进行,此处从略