Oracle 12.2安装示例schema

在做Oracle数据库实验时都会用到一些示例SCHEMA如:HR、OE、SH等,在Oracle11g版本时在DBCA时直接勾选Sample Schemas就可以安装这些示例SCHEMA,如下图:

wKioL1mUaMaBJvtbAAEnBYK5ZxI858.png

但到了Oracle12.2 版本,也有一个示例Schemas选项卡如下图所示:

wKioL1mUaQ6Ttns9AAC5h-qydjM478.png

但是数据库安装完成后却还是没有这些示例SCHEMA,到底是怎么回事呢?我们来查一下官方文档:

Starting with Oracle Database 12c Release 2, the latest version of the sample schema scripts are available on GitHub at https://github.com/oracle/db-sample-schemas/releases/latest.

During a complete installation of Oracle Database, the HR schema can be installed either manually or automatically when creating a database using the dbca option. All the other sample schemas must be installed manually via the scripts available on GitHub.

从上面的官方文档中我们可以看到从Oracle12.2版本开始,示例Schemas的脚本被放到了GitHub上,在DBCA安装时只会安装hr示例Schema。从文档中给出的指定地址下载示例Schema安装脚本:

wKioL1mUalCh5__3AABZYHHGMr4457.png

从README.txt文档中找到安装方法,开始安装:

sys@ORA12C>@mksample

  

specify password for SYSTEM as parameter 1:

Enter value for 1: 123456

  

specify password for SYS as parameter 2:

Enter value for 2: 123456

  

specify password for HR as parameter 3:

Enter value for 3: hr

  

specify password for OE as parameter 4:

Enter value for 4: oe

  

specify password for PM as parameter 5:

Enter value for 5: pm

  

specify password for IX as parameter 6:

Enter value for 6: ix

  

specify password for  SH as parameter 7:

Enter value for 7: sh

  

specify password for  BI as parameter 8:

Enter value for 8: bi

  

specify default tablespace as parameter 9:

Enter value for 9: users

  

specify temporary tablespace as parameter 10:

Enter value for 10: temp

  

specify log file directory (including trailing delimiter) as parameter 11:

Enter value for 11: /home/oracle/dbca

  

specify connect string as parameter 12:

Enter value for 12: localhost:1521/ora12c

  

Sample Schemas are being created ...

  

mkdir: cannot create directory ‘/home/oracle/dbca’: File exists

  

Connected.

DROP USER hr CASCADE

          *

ERROR at line 1:

ORA-01918: user 'HR' does not exist

  

  

DROP USER oe CASCADE

          *

ERROR at line 1:

ORA-01918: user 'OE' does not exist

  

  

DROP USER pm CASCADE

          *

ERROR at line 1:

ORA-01918: user 'PM' does not exist

  

  

DROP USER ix CASCADE

          *

ERROR at line 1:

ORA-01918: user 'IX' does not exist

  

  

DROP USER sh CASCADE

          *

ERROR at line 1:

ORA-01918: user 'SH' does not exist

  

  

DROP USER bi CASCADE

          *

ERROR at line 1:

ORA-01918: user 'BI' does not exist

  

  

Connected.

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_main.sql"

Connected.

SP2-0310: unable to open file "__SUB__CWD__/order_entry/oe_main.sql"

Connected.

SP2-0310: unable to open file "__SUB__CWD__/product_media/pm_main.sql"

Connected.

SP2-0310: unable to open file "__SUB__CWD__/info_exchange/ix_main.sql"

Connected.

SP2-0310: unable to open file "__SUB__CWD__/sales_history/sh_main.sql"

Connected.

SP2-0310: unable to open file "__SUB__CWD__/bus_intelligence/bi_main.sql"

Connected.

not spooling currently

SP2-0310: unable to open file "__SUB__CWD__/mkverify.sql"

从上面看到输出报错,没有安装成功。报错的是“__SUB__CWD__”没有找到,打开mksample.sql文件,确实有这个变量,但不知道在哪里声明的。

重新查看README.md文档看到需要把“__SUB__CWD__”这个变量替换为当前路径,还给出了命令:

[oracle@rhel7 db-sample-schemas-12.2.0.1]$ perl -p -i.bak -e 's#__SUB__CWD__#'$(pwd)'#g' *.sql */*.sql */*.dat

执行完上面的脚本后重新安装示例Schema:

sys@ORA12C>@mksample 123456 123456 hr oe pm ix sh bi users temp /home/oracle/dbca/ 192.168.56.22:1521/ora12c

最终安装成功:

system@ORA12C>select username,created from dba_users where created>sysdate-1;

  

USERNAME                       CREATED

------------------------------ -----------------

OE                             20170816 23:32:22

SH                             20170816 23:34:25

PM                             20170816 23:33:13

IX                             20170816 23:34:12

BI                             20170816 23:36:20

HR                             20170816 23:32:07

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2825fad6de21a84b531fba0f1e3bad46.html