Oracle 12c中没有usename HR

时间:2015-11-16 09:20:08

标签: oracle oracle12c

我已经在我的ubuntu中安装了oracle 12c。我通过sqldeveloper使用oracle,我可以使用我的密码成功连接到用户sys。我希望能够默认使用oracle提供的所有数据库。当我尝试使用与hr中相同的密码连接用户名sys时,我收到错误的用户名。

select * from all_users未列出用户hr。所以我假设根本没有创建用户。

  • 默认情况下,hr用户是否应该没有?
  • 如何进行配置以便能够访问所有`hr`数据库?

3 个答案:

答案 0 :(得分:7)

  

我已经在我的ubuntu中安装了oracle 12c。我假设根本没有创建用户。

您已将 12c数据库创建为容器。现在您可能正在连接容器数据库,而示例模式驻留在可插入数据库中。

Oracle 12c引入了 multi-tenant architecture 。有一些强制性的安装后步骤。请阅读Oracle 12c Post Installation Mandatory Steps

最常见的误解是“SQLPLUS / AS SYSDBA”用法。

由于我们已选中创建单个CDB的选项,因此“SQLPLUS / AS SYSDBA”命令将始终登录 CDB 。通常,开发人员在记录为SCOTT/HR后会直接解锁“SYSDBA”帐户。但这就是诀窍:

“SCOTT,HR”和其他示例模式位于 PDB 中,而不在 CDB 中。因此,您需要以sysdba身份登录 PDB

例如,

sqlplus SYS/password@PDBORCL AS SYSDBA

SQL> ALTER USER scott ACCOUNT UNLOCK IDENTIFIED BY tiger;

sqlplus scott/tiger@pdborcl

SQL> show user;
USER is "SCOTT"

UDPATE 似乎OP尚未安装示例模式。它可以手动完成或通过DBCA完成。

您需要运行 hr_main.sql 脚本。创建人力资源(HR)架构所需的所有脚本都驻留在in $ORACLE_HOME/demo/schema/human_resources

来自 documentation

  

安装人工智能模式

     

创建人力资源(HR)架构所需的所有脚本都驻留   在$ ORACLE_HOME / demo / schema / human_resources。

     

您只需要调用一个脚本hr_main.sql来创建所有脚本   对象并加载数据

     

运行 hr_main.sql 可完成以下任务:

     
      
  1. 删除任何以前安装的HR架构
  2.   
  3. 创建用户HR并授予必要的权限
  4.   
  5. 以HR身份连接
  6.   
  7. 调用创建和填充架构对象的脚本
  8.   

答案 1 :(得分:2)

您应该解锁HR用户,连接到SQL并运行此命令

ALTER USER HR ACCOUNT UNLOCK IDENTIFIED BY password;

document

中详细了解相关信息

答案 2 :(得分:2)

要安装示例模式,您需要按照https://github.com/oracle/db-sample-schemas中的说明进行操作。

原始Oracle Database 12.1.0.2演示文件夹中的任何内容都无法正常运行。