公用用户和本地用户
SYS@cdb1> select username,common,con_id from cdb_users
where username in ('SYS','HR');
COMMON 列显示 YES 为公共用户,在所有容器包括将来创建的 PDB 中均存在
COMMON 列显示 NO 为本地用户,仅在当前容器中存在
cdb 中创建公用用户
创建公共用户 c##user01,设置密码为 oracle
SYS@cdb1> create user c##user01 identified by oracle;
SYS@cdb1> select username,common,con_id from cdb_users
where username in ('SYS','HR','C##USER01');
pdb 中创建本地用户
pdb 中创建本地用户 user02
SYS@pdb1> create user user02 identified by oracle;
SYS@pdb1> select username,common,con_id from cdb_users
where username in ('SYS','HR','C##USER01','USER02');
公用和本地权限和角色
cdb 中给公用用户授权
在 cdb 中指定 container=current 进行授权
SYS@cdb1> grant connect to c##user01 container=current;
cdb 有权限登录, pdb 没有权限
sqlplus c##user01/oracle@cdb1
sqlplus c##user01/oracle@pdb1
在 cdb 中授权指定 container=all
SYS@cdb1> grant connect to c##user01 container=all;
cdb pdb 都有权限
pdb 中给本地用户授权
pdb 中对本地用户授权,指定 container=all 报错,指定 container=current 成功
SYS@pdb1> grant connect to user02 container=all;
SYS@pdb1> grant connect to user02 container=current;
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。