Oracle创建角色错误,oracle12創建用戶錯誤ORA-65096: 公用用戶名或角色名無效

ora-65096解決方案

創建用戶命令:

create user newuser identified by newuser;

報錯:ORA-65096: invalid common user or role name(公用用戶名或角色名無效).

錯誤原因:

用戶想在PDBORCL中創建newuser用戶,卻未設置會話container到PDB,而在CDB中創建公有用戶因無法通過名稱或角色驗證出錯.

1.解決方案一

a.創建用戶的時候用戶名以c##或者C##開頭

命令:create user c##newuser identified by newuser;(此時創建的用戶名稱在表user$中為: ##newuser),不是我們需要的newuser;

b.在表user$中查找新建的表對應的user#;

命令:select * from user$ t where t.name like '%newuser%';

取出user#的值,這里假設為108;

c.手動將用戶名稱##newuser修改為newuser;

命令:update user$ set name='newuser' where user#=108;

commit;

d.強制刷新

alter system checkpoint;

alter system flush shared_pool;

d.重新設置密碼newuser

alter user newuser identified by newuser;

ORA65096的相關處理流程如下:

1、查看數據庫CDB名

select name,cdb from v$database;

93363b14be30bbb34f93acb5a64c48f0.png

2、查看數據庫PDB名

col pdb_name for a30

select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;

select con_id,dbid,NAME,OPEN_MODE from v$pdbs;

2255f386a34f7ceaf1e5a989a7dbfaf8.png

3、設置會話PDB指定的容器庫

alter session set container=pdborcl;

a21b9c8b1a4356120482d1a3c2a9918d.png

4、創建PDBORCL庫用戶

--注意需要先確定數據庫中有users表空間、temp臨時表空間

create user ajao identified by ajao default tablespace users temporary tablespace temp;

e3117033aa08ab8ebb160772f8e5f93d.png

5、授權

grant create user,drop user,alter user,create any view,connect,resource,dba,create session,create any sequence to AJAO;

至此,ORACLE 12C PDB的PDBORCL中創建AJAO用戶完成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值