Oracle授权新用户可查询某用户下所有表

正常创建用户并授予连接权限。

create user USERB identified by "密码" default tablespace 表空间;
grant connect to estate_user;

需要将哪些表的查询权限授权给新用户,生成授权语句。

select 'grant select on '||owner||'.'||object_name||' to UserA;'
from dba_objects
where owner in ('UserB') and object_type='TABLE';
--将生成出来的语句用dba用户去授权

到这一步,用新用户去做查询会报错:
Oracle授权新用户可查询某用户下所有表_第1张图片
解决方法:

用dba用户授权
grant select on v_$session to USERA;
grant select on v_$sesstat to USERA;
grant select on v_$statname to USERA;

你可能感兴趣的:(oracle,数据库)