文档 · 2019年10月29日 0

Oracle创建只读用户

1.创建用户

create user reader identified by Reader123456;

reader :用户名
Reader123456: 密码

2.授予连接权限

grant connect to reader;

3.创建同义词权限

grant create synonym to reader;

4.添加只读权限

grant select_catalog_role,create session to reader;

5.给表授权reader的只读权限

grant select on TESTUSER.TESTTABLE to reader;

TESTUSER: 用户名
TESTTABLE: 表名

如果要给TESTUSER中所有的表授于查询权限可以使用下面sql 先生成批量执行语句,然后复制生成的SQL语句批量授权;

select 'grant select on '||owner||'.'||object_name||' to reader;'  from dba_objects  where owner in ('TESTUSER') and object_type='TABLE';

6.为表创建同义词

create or replace synonym reader.TESTTABLE for TESTUSER.TESTTABLE;

如果给TESTUSER 所有表授予同义词权限,可以使用下面sql 生成批量语句,然后复制生成的sql语句批量执行

select 'create or replace synonym reader.'||object_name||' for '||owner||'.'||object_name||';' from dba_objects where owner in ('TESTUSER') and object_type='TABLE';
打赏
 
Oracle创建只读用户