Oracle ORA-20000:模式;人力资源部;不存在或权限不足

Oracle ORA-20000:模式;人力资源部;不存在或权限不足,oracle,oracle11g,Oracle,Oracle11g,我使用Oracle11gExpress。我尝试安装示例数据库HR。Fromcmd sqlplus system 123456 错误: 如何正确安装示例数据库HR?问题在于线路 create user hr identified by 123456a@ 由于未创建用户,您将收到其他错误。 要解决此问题,请执行以下任一操作 从密码中删除特殊字符。或者在密码中使用下划线 create user hr identified by 123456a 或 尝试用双引号括起密码。(我现在无法测试它。

我使用Oracle11gExpress。我尝试安装示例数据库HR。Fromcmd

sqlplus
system
123456

错误:


如何正确安装示例数据库HR?

问题在于线路

create user hr identified by 123456a@
由于未创建用户,您将收到其他错误。

要解决此问题,请执行以下任一操作

  • 从密码中删除特殊字符。或者在密码中使用下划线

    create user hr identified by 123456a
    

  • 尝试用双引号括起密码。(我现在无法测试它。但如果它不起作用,请尝试第一个选项。我引用了此选项)


在执行脚本之前,以SYS user的身份导航到PDB容器

[oracle@af18354c958e /]$ sqlplus sys as sysdba
Enter password: password

Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> alter session set container = ORCLPDB1
SQL> @hr_main.sql

specify password for HR as parameter 1:
Enter value for 1: hr

specify default tablespeace for HR as parameter 2:
Enter value for 2: users

specify temporary tablespace for HR as parameter 3:
Enter value for 3: temp

specify log path as parameter 4:
Enter value for 4: $ORACLE_HOME/demo/schema/log/

显然,创建用户hr的语句没有正确执行,尽管hr_main.sql脚本的执行没有停止

这对我很有用:

一旦成为sysdba:

SQL>alter session set“\u ORACLE\u SCRIPT”=true; 会议改变了。 SQL>创建由hr标识的用户hr; 用户创建的。 SQL>删除用户hr级联; 用户退出。 SQL>@?/demo/schema/human_resources/hr_main.SQL ... 用户创建的。
…你是怎么开始这一切的?你上面的三行字是什么意思?这是一个调用吗?脚本的输出包含了您自己解决问题所需的所有信息。第一个错误是预期的,因为HR不存在。第二个错误不是预期的,并导致CREATE USER语句失败。这会导致所有后续错误,因为这些错误是根据正在创建的HR预测的。所以:修复第二个错误,其他一切都会很好。可能需要在alter命令末尾加一个逗号。另外,我最终需要执行
@/demo/schema/human_resources/hr_main.sql
我认为alter命令后面不需要逗号。但是,我们确实需要执行hr_main.sql,为此,我们需要首先导航到PDB容器,因为模式只能在这些容器中创建,而且对于执行权限,我们需要首先以具有管理员权限的sysdba身份登录。而且,你的人力资源模式将在你提到的路径中,感谢你在docker容器上为我所做的一切
create user hr identified by "123456a@"
[oracle@af18354c958e /]$ sqlplus sys as sysdba
Enter password: password

Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> alter session set container = ORCLPDB1
SQL> @hr_main.sql

specify password for HR as parameter 1:
Enter value for 1: hr

specify default tablespeace for HR as parameter 2:
Enter value for 2: users

specify temporary tablespace for HR as parameter 3:
Enter value for 3: temp

specify log path as parameter 4:
Enter value for 4: $ORACLE_HOME/demo/schema/log/