レスポンスファイルベースでのOracleテスト構築用メモ

Oracleでインストールだと OUI ですが、レスポンスファイルを使ってサイレントモードで入れればエラー確認は面倒かもですが、とりあえずテスト向けに作るのは楽だったりします。
DBだけなら幾らでもサンプルがありそうな気がしますが、あまり見かけないのと必要だったので作ったもののメモです。
OS環境設定は終わっている前提で、11.2.0.3.0を入れる感じ。


●GridInfrastructure Install
cfgrsp.propertiesをちゃんと作ること。作らずに configToolAllCommands 叩くとASMインスタンスができませんでした。
まあ、作って再実行すれば簡単にリカバリできるんですが。後、AUサイズ4Mってしたはずなのに何故か1Mでできた…。

grid
$ unset ORACLE_HOME ORACLE_SID NLS_LANG
$ cd [ grid展開先 ]
$ vi grid.rsp
	=== modify
	ORACLE_HOSTNAME=hogehoge
	===
$ ./runInstaller -silent -responseFile [ grid.rspへのフルパス ]

root
# /u01/app/oraInventory/orainstRoot.sh
# /u01/app/grid/product/11.2.0.3/grid/root.sh

grid
$ vi /var/tmp/cfgrsp.properties
	=== create
	oracle.assistants.asm|S_ASMPASSWORD=xxxxx
	oracle.assistants.asm|S_ASMMONITORPASSWORD=xxxxxx
	===
$ /u01/app/grid/product/11.2.0.3/grid/cfgtoollogs/configToolAllCommands RESPONSE_FILE=/var/tmp/cfgrsp.properties

Oracle Install
特別なことは特にありません。SW Onlyで入れるのでレスポンスファイルもかなり簡単で済みます。

oracle
$ unset ORACLE_HOME ORACLE_SID NLS_LANG
$ cd [ database展開先 ]
$ vi db.rsp
	=== modify
	ORACLE_HOSTNAME=hogehoge
	===
$ ./runInstaller -silent -responseFile [ db.rspへのフルパス ]

●Create Database
ASM 使用で且つ、DatabaseとGrid Infrastructure を別のOSユーザ…だと嘘というか、管理グループが別と言ったほうがまだ正確かな?で入れた場合は setasmgidwrap が必要になります。
要はASMが管理しているデバイスにoracleバイナリが操作できるようにするために名前のとおりgidレベルでアクセスできるようにするもの。
この辺参照。http://docs.oracle.com/cd/E16338_01/server.112/b56310/upgrade.htm
create databaseのスクリプトは別のDB作成の際にスクリプト保存しておいたものを元にSID周りを加工したものです。
普通にDB作ったことがある人なら、大抵オレオレ create database スクリプトがあると思うのでそれを使えばいいと思います。
DBCA用のレスポンスファイル作れば良いのに…という話があるのですが、ASMベースでAlias名を付与した場合に上手くいかなかったのでこちらで妥協しています。
尚、DBCA用のレスポンスファイルベースで作る場合はsetasmgidwrapは内部で勝手に実行されるようで不要です。

grid
$ setasmgidwrap o=/u01/app/oracle/product/11.2.0.3/dbhome_1/bin/oracle
$ exit

oracle
$ mkdir -p /u01/app/oracle/admin/${ORACLE_SID}
$ cp -pr /var/tmp/scripts_template /u01/app/oracle/admin/${ORACLE_SID}/scripts
$ cd /u01/app/oracle/admin/${ORACLE_SID}/scripts
$ env | grep ORA
$ bash ${ORACLE_SID}.sh

●参考:grid.rsp sample

oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0

###############################################################################
#                                                                             #
#                          SECTION A - BASIC                                  #
#                                                                             #
###############################################################################
ORACLE_HOSTNAME=hogehoge
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,ja
oracle.install.option=HA_CONFIG
ORACLE_BASE=/u01/app/grid
ORACLE_HOME=/u01/app/grid/product/11.2.0.3/grid

################################################################################
#                                                                              #
#                              SECTION B - GROUPS                              #
#                                                                              #
#   The following three groups need to be assigned for all GI installations.   #
#   OSDBA and OSOPER can be the same or different.  OSASM must be different    #
#   than the other two.                                                        #
#   The value to be specified for OSDBA, OSOPER and OSASM group is only for    #
#   Unix based Operating System.                                               #
#                                                                              #
################################################################################
oracle.install.asm.OSDBA=asmdba
oracle.install.asm.OSOPER=asmoper
oracle.install.asm.OSASM=asmadmin

################################################################################
#                                                                              #
#                           SECTION C - SCAN                                   #
#                                                                              #
################################################################################
oracle.install.crs.config.gpnp.scanName=
oracle.install.crs.config.gpnp.scanPort=0

################################################################################
#                                                                              #
#                           SECTION D - CLUSTER & GNS                      #
#                                                                              #
################################################################################
oracle.install.crs.config.clusterName=
oracle.install.crs.config.gpnp.configureGNS=true
oracle.install.crs.config.gpnp.gnsSubDomain=
oracle.install.crs.config.gpnp.gnsVIPAddress=
oracle.install.crs.config.autoConfigureClusterNodeVIP=false
oracle.install.crs.config.clusterNodes=
oracle.install.crs.config.networkInterfaceList=

################################################################################
#                                                                              #
#                              SECTION E - STORAGE                             #
#                                                                              #
################################################################################
oracle.install.crs.config.storageOption=
oracle.install.crs.config.sharedFileSystemStorage.diskDriveMapping=
oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=
oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=NORMAL
oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=
oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=NORMAL
               	
################################################################################
#                                                                              #
#                               SECTION F - IPMI                               #
#                                                                              #
################################################################################
oracle.install.crs.config.useIPMI=false
oracle.install.crs.config.ipmi.bmcUsername=
oracle.install.crs.config.ipmi.bmcPassword=

################################################################################
#                                                                              #
#                                SECTION G - ASM                               #
#                                                                              #
################################################################################
oracle.install.asm.SYSASMPassword=oracle
oracle.install.asm.diskGroup.name=DATA
oracle.install.asm.diskGroup.redundancy=EXTERNAL
oracle.install.asm.diskGroup.AUSize=4
oracle.install.asm.diskGroup.disks=/dev/sdb
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/sd*
oracle.install.asm.monitorPassword=oracle

################################################################################
#                                                                              #
#                             SECTION H - UPGRADE                              #
#                                                                              #
################################################################################
oracle.install.crs.upgrade.clusterNodes=
oracle.install.asm.upgradeASM=false
oracle.installer.autoupdates.option=SKIP_UPDATES
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
PROXY_HOST=
PROXY_PORT=0
PROXY_USER=
PROXY_PWD=
PROXY_REALM=

●参考:db.rsp sample

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=hogehoge
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,ja
ORACLE_HOME=/u01/app/oracle/product/11.2.0.3/dbhome_1
ORACLE_BASE=/u01/app/oracle
## ここから下は「INSTALL_DB_SWONLY」の場合は恐らく不要
oracle.install.db.InstallEdition=SEONE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=false
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=false
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=SKIP_UPDATES
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=