暂无图片
cdb中的普通用户查询pdb中数据文件的权限
我来答
分享
ray
2022-03-17
cdb中的普通用户查询pdb中数据文件的权限

在cdb中创建普通用户,需要那些权限可以在cdb的root中查询出pdb中数据字典的内容

例如下面的语句在cdb的root容器中查询出pdb的数据文件信息:

    select file_name,file_id,tablespace_name from cdb_data_files;


我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
DarkAthena

执行这个

alter user C##TESTUSER set container_data=all container=current;

image.png

参考官方文档
https://docs.oracle.com/database/121/SQLRF/statements_4003.htm#SQLRF01103

To specify the CONTAINER clause, you must be connected to a multitenant container database (CDB). If the current container is the root, then you can specify CONTAINER = ALL or CONTAINER = CURRENT. If the current container is a pluggable database (PDB), then you can specify only CONTAINER = CURRENT.

暂无图片 评论
暂无图片 有用 1
暂无图片
ray
题主
2022-03-17
多谢
吾喾

先show pdbs 查看pdb对应的con_id,然后加where条件查询

select file_name,file_id,tablespace_name from cdb_data_files 

where con_id=3;

暂无图片 评论
暂无图片 有用 1
ray
题主
2022-03-17
select * from containers(sys.GV_$TEMP_SPACE_HEADER) where CON_ID=3; 这样获取不到数据,但是dba权限可以查到,这样需要其他的权限吗?
吾喾
答主
2022-03-17
没试过
ray

GV_$TEMP_SPACE_HEADER这样的想获取pdb中的内容呢?

暂无图片 评论
暂无图片 有用 0
ray

select * from containers(sys.GV_$TEMP_SPACE_HEADER) where CON_ID=3; 这样是不是获取不到数据,但是dba权限可以查到,这样需要其他的权限吗?

暂无图片 评论
暂无图片 有用 0
吾喾
2022-03-17
grant select on sys.GV_$TEMP_SPACE_HEADER to user container=all; 试试
ray
题主
2022-03-17
好像也不行
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏