和 Oracle 10g 的静默安装一样,Oracle 11g 的静默安装最重要的也是应答文件,应答文件放在安装文件所在的response目录下:
[root@V890 /]$ su - ora11g
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
[ora11g@V890 ~]$ ls
11gr2 local.cshrc local.login local.profile
[ora11g@V890 ~]$ cd 11gr2/
[ora11g@V890 11gr2]$ ls
solaris.sparc64_11gR2_database_1of2.zip solaris.sparc64_11gR2_database_2of2.zip
# 解开 Oracle 11g 的安装压缩包
[ora11g@V890 11gr2]$ unzip *
Archive: solaris.sparc64_11gR2_database_1of2.zip
caution: filename not matched: solaris.sparc64_11gR2_database_2of2.zip
[ora11g@V890 11gr2]$ unzip solaris.sparc64_11gR2_database_1of2.zip ; unzip solaris.sparc64_11gR2_database_2of2.zip
....
....
[ora11g@V890 11gr2]$ ls -lth
总数 4735413
-rw-r--r-- 1 ora11g oracle 1000M 6月 1日 09:01 solaris.sparc64_11gR2_database_2of2.zip
-rw-r--r-- 1 ora11g oracle 1.3G 6月 1日 09:00 solaris.sparc64_11gR2_database_1of2.zip
drwxr-xr-x 8 ora11g oracle 10 2009 11月 6 database
[ora11g@V890 11gr2]$ cd database/
[ora11g@V890 database]$ ls
doc install response rpm runInstaller sshsetup stage welcome.html
[ora11g@V890 database]$ cd response/
[ora11g@V890 response]$ ls -lth
总数 148
-rw-r--r-- 1 ora11g oracle 22K 2009 11月 6 db_install.rsp
-rw-r--r-- 1 ora11g oracle 44K 2009 11月 6 dbca.rsp
-rwxr-xr-x 1 ora11g oracle 5.6K 2009 11月 6 netca.rsp
db_install.rsp 就是静默安装的应答文件,按照提示修改就是了:
[ora11g@V890 response]$ ls
db_install.rsp dbca.rsp netca.rsp
[ora11g@V890 response]$ cp db_install.rsp ~/
# 修改响应文件
[ora11g@V890 ~]$ cat db_install.rsp | grep -v "^#" | grep -v "^$"
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_AND_CONFIG
ORACLE_HOSTNAME=OraDbHome2
UNIX_GROUP_NAME=oracle
INVENTORY_LOCATION=/u01/app/ora11g/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/u01/app/ora11g/product/11.2.0/db_2
ORACLE_BASE=/u01/app/ora11g
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=oracle
oracle.install.db.OPER_GROUP=oracle
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=ora11g.v890
oracle.install.db.config.starterdb.SID=ORA11G
oracle.install.db.config.starterdb.characterSet=ZHS16GBK
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=1024
oracle.install.db.config.starterdb.installExampleSchemas=true
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=oracle
oracle.install.db.config.starterdb.password.SYSTEM=oracle
oracle.install.db.config.starterdb.password.SYSMAN=oracle
oracle.install.db.config.starterdb.password.DBSNMP=oracle
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/u02/oradata/ora11g/ORA11G
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/u01/app/ora11g/flash_recovery_area
DECLINE_SECURITY_UPDATES=true
# DECLINE_SECURITY_UPDATES=true 一定要为 true 否会提示 email 地址没有设置不能安装
这里貌似是 Oracle 11g 的一个Bug,如果参数 DECLINE_SECURITY_UPDATES 不设置为 true 的话,安装就会报错,此问题在 X86 的 Linux 和 Solaris For SPARC 都存在,估计 Windows 也不能幸免,提示信息比较诡异,完全看不出和这个参数有任何关系:
[ora11g@V890 database]$ ./runInstaller -silent -ignoreSysPrereqs -force -ignorePrereq \
[ora11g@V890 database]> -responseFile /home/ora11g/db_install.rsp
正在启动 Oracle Universal Installer...
检查临时空间: 必须大于 180 MB。 实际为 730 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 4509 MB 通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2010-06-10_11-48-48AM. 请稍候...[ora11g@V890 database]$ [WARNING] [INS-13001] 环境不满足最低要求。
原因: 此环境不满足最低要求
操作: 请查看日志以了解详细信息, 或者检查此产品的支持配置。
[SEVERE] - 未指定电子邮件地址
准备好应答文件之后就可以使用以下命令开始 Oracle 11g 的静默安装:
[ora11g@V890 database]$ ./runInstaller -silent -ignoreSysPrereqs -force -ignorePrereq \
[ora11g@V890 database]> -responseFile /home/ora11g/db_install.rsp
Oracle 11g 静默安装感觉上做得没有 Oracle 10g 的好,先不说上面的 Bug ,Oracle 10g 好歹能打印进度,Oracle 11g 只能看着屏幕发呆:
[ora11g@V890 database]$ ./runInstaller -silent -ignoreSysPrereqs -force \
[ora11g@V890 database]> -responseFile /home/ora11g/db_install.rsp
正在启动 Oracle Universal Installer...
检查临时空间: 必须大于 180 MB。 实际为 7711 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 8111 MB 通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2010-06-10_01-26-17PM. 请稍候...[ora11g@V890 database]$ [WARNING] [INS-30011] 输入的口令不符合 Oracle 建议的标准。
原因: Oracle 建议输入的ADMIN口令长度至少为 8 个字符, 其中至少包含 1 个大写字符, 1 个小写字符和 1 个数字 [0-9]。
操作: 提供符合 Oracle 建议标准的口令。
[WARNING] [INS-13014] 目标环境不满足一些可选要求。
原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log
操作: 从日志 /u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。
[WARNING] [INS-30011] 输入的口令不符合 Oracle 建议的标准。
原因: Oracle 建议输入的ADMIN口令长度至少为 8 个字符, 其中至少包含 1 个大写字符, 1 个小写字符和 1 个数字 [0-9]。
操作: 提供符合 Oracle 建议标准的口令。
[WARNING] [INS-13014] 目标环境不满足一些可选要求。
原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log
操作: 从日志 /u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。
可以在以下位置找到本次安装会话的日志:
/u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log
[WARNING] [INS-30011] 输入的口令不符合 Oracle 建议的标准。
原因: Oracle 建议输入的ADMIN口令长度至少为 8 个字符, 其中至少包含 1 个大写字符, 1 个小写字符和 1 个数字 [0-9]。
操作: 提供符合 Oracle 建议标准的口令。
[WARNING] [INS-13014] 目标环境不满足一些可选要求。
原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log
操作: 从日志 /u01/app/ora10g/oraInventory/logs/installActions2010-06-10_01-26-17PM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。
[ora11g@V890 database]$ 以下配置脚本需要以 "root" 用户的身份执行。
#!/bin/sh
#要运行的 Root 脚本
/u01/app/ora11g/product/11.2.0/db_2/root.sh
要执行配置脚本, 请执行以下操作:
1. 打开一个终端窗口
2. 以 "root" 身份登录
3. 运行脚本
4. 返回此窗口并按 "Enter" 键继续
Successfully Setup Software.
安装到此结束,Oracle 11g 已经跑起来了:
[ora11g@V890 database]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 10 13:51:47 2010
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/u02/oradata/ora11g/ORA11G/ora11g/system01.dbf
/u02/oradata/ora11g/ORA11G/ora11g/sysaux01.dbf
/u02/oradata/ora11g/ORA11G/ora11g/undotbs01.dbf
/u02/oradata/ora11g/ORA11G/ora11g/users01.dbf
/u02/oradata/ora11g/ORA11G/ora11g/example01.dbf
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u02/oradata/ora11g/ORA11G/ora11g/control01.ctl
/u01/app/ora11g/flash_recovery_area/ora11g/control02.ctl
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/u02/oradata/ora11g/ORA11G/ora11g/redo03.log
/u02/oradata/ora11g/ORA11G/ora11g/redo02.log
/u02/oradata/ora11g/ORA11G/ora11g/redo01.log