服务器 频道

PL/SQL学习笔记之十一

  查看:
  user_indexes得到索引的定义和唯一性。

  user_ind_columns 得到索引的名称,表名和列名。
  select ic.index_name,ic.column_name,ic.column_position,
  ic.uniquenes
  from user_indexes ix,user_ind_columns ic
  where ic.index_name=ix.index_name and ic.table_name=''table_name'';

  删除索引:
  DROP INDEX index_name;
  为了删除索引,必须拥有索引或者拥有DROP ANY INDEX 权限。 

  控制用户的访问

  数据库的安全性

  系统安全性:
  系统权限(system privilege),获得访问数据库的能力。
  超过一百个
  创建新用户:
  CREATE USER user_name IDENTIFIED BY password;
  删除用户
  删除表
  授予权限:
  GRANT priv_list TO user/public/role(角色);
  grant create session ,create table,create sequence to user_name;   
  在授予建表权限的同时也应该赋予存储空间。
  分配配额:ALTER  USER user_name QUOTA nM ON space_name;

  数据安全性:
  对象权限(object privilege),获得维护数据库的能力。
  
  每种对象的权限都不相同。
  对象的所有者拥有对象的所有权限。
  对象的所有者可以将自己的对象权限赋予其他人。   

   GRANT object_priv_list [(col_list)]
  ON owner.object TO user/role/public
  [WITH GRANT OPTION];--将权限授予用户的同时,该用户也拥有了授予其他用户对象权限的功能。
  (及联授予)会导致及联移除。

   移除权限:
  REVOKE priv_list/all  ON object FROM user;
  
  方案:数据库对象的集合,包括表、视图、序列.....。

  角色:
  CREATE ROLE role_name;
  GRANT priv_list TO role_name;
  GRANT role_name TO user_list/role_list;

  修改口令:
  方法 (1)ALTER USER user_name IDENTIFIED BY password;
  (2)password + 回车
  
  USER_SYS_PRIVS 当前用户的系统权限。
  USER_ROLE_PRIVS 当前用户的角色权限。
  USER_tab_privs_made 用户对象被授予的他人的信息。

0
相关文章