【Oracle】第一章创建授权(二)

2015-02-02 23:06:04 · 作者: · 浏览: 19
er_tab_privs_made

user_tab_privs_made 部分列

列名称

说明

Grante

该特权授予的用户

Table_name

所授予的特权所操作的对象(例如表)名

Grantor

授权者

Privilege

对该对象授予的特权

grantable

特权所授予的用户是否可以将这种特权再授予其他用户,该值等于 yes 或 no

hierarchy

特权是否构成层次关系。该值等于 yes 或 no

User_col_privs_made 可以检查某个用户对哪些列对象开放了哪些特权。

Select * from user_col_privs_made;

?

from user_col_privs_made 部分列

列名称

列说明

Grantee

该特权授予的用户

Table_name

所授予特权所操作的对象名

Column_name

所授予特权所操作的对象名

Grantor

授权者

Privilege

对该对象授予的特权

grantable

特权授予的用户是否可以将这种权限再授予其他用户,该值等于 yes 或 no

?

如果以tuser 用户身份连接到数据库上就可以通过公共对象名称 sttable 对 yyaccp.sttable 进行检索:

Connect tuser/tuser;

Select * from sttable;

?

23.撤销用户对象的特权:

使用 revoke 语句撤销某个用户的对象特权。以下命令以 yyaccp 用户的身份连接到数据库上,并撤销 tuser 对sttable 表的 insert 特权

Connect yyaccp/accp;

Revoke insert on sttable from tuser

Oracle 数据库中的 数据块、区、段、表空间

?

在最细的粒度上,Oracle存储数据到数据块中(也叫逻辑块、Oracle块或页),一个数据块对应磁盘上的一定数量字节的数据库物理存储空间。

  逻辑数据库存储空间的下一个存储级别是区。一个区是分配用来存储特定信息的连续数据块。

  区之上的逻辑数据库存储级别叫段。一个段是区的集合,每个区都被分配了特定的数据结构,所有的区都存储在同一表空间中。例如,每个表的数据被存储在它自己的数据段中,每个索引的数据存储在它自己的索引段中。假如表或索引是分区的,每个分区被存储在它自己的段中。

  Oracle以区为单位给段分配空间。当段中存在的区满了,Oracle为该段分配另外的区。由于区是按需分配的,一个段的区可能是也可能不是连续的。

  段和它的所有区存储在一个表空间中。在一个表空间中,一个段包括的区能分布在多个文件中,也即段能跨越数据文件。无论如何,每个区必须在一个数据文件中。