SQL> connect /as sysdba
已连接。
SQL> show parameter o7
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
SQL> select name from system_privilege_map where name like '%SELECT ANY TABLE%';
NAME
----------------------------------------
SELECT ANY TABLE
SQL> grant select any table to test5;
授权成功。
SQL> connect test5/test5
已连接。
SQL> select count(*) from dba_data_files;
select count(*) from dba_data_files
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
SQL> alter system set O7_DICTIONARY_ACCESSIBILITY=true scope=spfile;
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1247876 bytes
Variable Size 75498876 bytes
Database Buffers 83886080 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL> connect test5/test5
已连接。
SQL> select count(*) from dba_data_files;
COUNT(*)
----------
9
SQL> connect /as sysdba
已连接。
SQL> revoke select any table from test5;
撤销成功。
SQL> connect test5/test5
已连接。
SQL> select count(*) from dba_data_files;
select count(*) from dba_data_files
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
SQL> connect /as sysdba
已连接。
SQL> grant SELECT_CATALOG_ROLE to test5;
授权成功。
SQL> connect test5/test5
已连接。
SQL> select count(*) from dba_data_files;
COUNT(*)
----------
9
SQL> connect /as sysdba
已连接。
SQL> alter system set O7_DICTIONARY_ACCESSIBILITY=FALSE scope=spfile;
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1247876 bytes
Variable Size 75498876 bytes
Database Buffers 83886080 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL> connect test5/test5
已连接。
SQL> select count(*) from dba_data_files;
COUNT(*)
----------
9
SQL>
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/19602/viewspace-1007477/ ,如需转载,请注明出处,否则将追究法律责任。