最近在学习Oracle数据库,由于是小白一枚,经常遇见一些奇奇怪怪的问题,看了其它文章教的方法好多千篇一律,不适用我遇到的问题,因此在找了许多方法后终于解决了问题,防止以后忘了怎么搞就写下来以便复盘用。
一、问题说明
在Oracle 19c中,hr模式是一个比较常用的用户模式。由于我创建数据库时选择了带容器的数据库,这是从Oracle12c发布以后cdb与pdb的新特性,直接加载脚本会报错,报错内容为
ORA-65096: invalid common user or role name
在CDB中创建公有用户因无法通过名称或角色验证出错。
二、解决办法
1、登录DBA用户,分别输入以下命令:
alter session set "_ORACLE_SCRIPT"=true;
create user hr identified by hr;
drop user hr cascade;
结果如下图所示:
然后加载脚本,并进行设置即可。
加载脚本的命令为:
@$ORACLE_HOME/demo/schema/human_resources/hr_main.sql
相关设置如下图所示:
查询数据库的用户可以看到HR用户模式已建立。
HR用户的连接
首次连接hr用户,需要解锁,然后修改hr用户的密码,这样就可以连接hr用户模式,命令及运行结果如下:
至此,登出DBA然后以hr的身份再次登入即可。