Oracle的官方安装包,除了软件外,还会自带一个示例数据库,准确地说,是几个示例schema,像HR用户,很多教程中用到的测试数据,其实就来自这。
如果是11g的examples,需要从官网,下载这个包,
p13390677_112040_Linux-x86-64_6of7.zip
上传服务器,解压,生成examples文件夹,内容如下,
[oracle@app examples]$ ls
install readme.html response runInstaller stage welcome.html
如果是图形安装,执行./runinstaller即可,和正常的数据库软件安装很像。
如果当前服务器,不支持图形操作,和数据库软件一样可以选择静默安装。
此时,我们需要设置静默安装的配置文件,首先,将包中提供的响应文件模板,demos_install.rsp,删除空行、注释等,生成新的文件,install.rsp,
[oracle@app response]$ cat demos_install.rsp | grep -v ^# | grep -v ^$ > install.rsp
根据实际信息,填写相应内容,其实rsp文件中的内容和用图形界面安装需要选择的内容都是一一对应的,无非是静默安装,提前输入了需要选择的信息,
[oracle@app response]$ cat install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_demosinstall_response_schema_v11_2_0
ORACLE_HOSTNAME=
UNIX_GROUP_NAME=dba
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0.4
ORACLE_BASE=/u01/app/oracle
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
带上响应文件的路径执行静默安装,
[oracle@app response]$ ./runInstaller -silent -force -ignorePrereq -ignoreSysPrereqs -responseFile /opt/app/software/examples/response/install.rsp
安装完成,$ORACLE/demo/schema中就存在mksample.sql脚本了,sqlplus执行@mksample.sql,就可以创建测试用户和数据了,
SQL> @mksample.sql
specify password for SYSTEM as parameter 1:
Enter value for 1: oracle
specify password for SYS as parameter 2:
Enter value for 2: oracle
specify password for HR as parameter 3:
Enter value for 3: oracle
specify password for OE as parameter 4:
Enter value for 4: oracle
specify password for PM as parameter 5:
Enter value for 5: oracle
specify password for IX as parameter 6:
Enter value for 6: oracle
specify password for SH as parameter 7:
Enter value for 7: oracle
specify password for BI as parameter 8:
Enter value for 8: oracle
specify default tablespace as parameter 9:
Enter value for 9: examples_tbs
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: /u01/app/oracle/diag/rdbms/xxx/XXX/trace
...
每个schema都是有他的含义,如下是他们的业务属性,
HR: Human Resources
OE: Order Entry
PM: Product Media
IX: Information Exchange
SH: Sales History
BI: Business Intelligence
如果有兴趣,可以读下mksample.sql,他会调用不同文件夹中的sql脚本,创建不同的用户,以及不同的数据,因此,可以有选择的创建个别用户,例如,只创建HR用户以及相关的数据,
[oracle@app response]$ cd /u01/app/oracle/product/11.2.0.4/demo/schema/human_resources
[oracle@app human_resources]$ ls
hr_analz.sql hr_code.sql hr_comnt.sql hr_cre.sql hr_dn_c.sql hr_dn_d.sql hr_drop.sql hr_idx.sql hr_main.sql hr_popul.sql
其实这些脚本,写的非常标准,除了创建测试schema,我们也可以从中学习他的代码逻辑、注释风格、调用方式,是很好的借鉴。
近期更新的文章:
文章分类和索引: