参考地址:http://blog.itpub.net/31539611/viewspace-2637086/
创建命令:
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;
命令: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;