静默安装Oracle12.2数据库
实验环境:
操作系统:Redhat 6.4 64位
数据库:Oracle 12c R2
一、安装前准备
1、 创建用户和组
[root@wjq~]# groupadd -g1000 oinstall
//oinstall组:是清单目录组(Oracle Inventory group),用于管理清单目录(Inventory)
[root@wjq~]# groupadd -g1001 dba //dba组:用于数据库管理
[root@wjq~]# useradd -u600 -g oinstall -G dba oracle
[root@wjq~]# passwdoracle
Changingpassword for user oracle.
Newpassword:
BADPASSWORD: it is based on a dictionary word
BADPASSWORD: is too simple
Retypenew password:
passwd:all authentication tokens updated successfully.
2、 创建目录
[root@wjq~]# mkdir -p/u01/app/oracle/product/12.2.0/dbhome_1
[root@wjq~]# chown -Roracle:oinstall /u01
[root@wjq~]# chmod -R 775/u01/app/oracle
3、 查看物理内存、交换空间和文件系统大小
[root@wjq~]# free -m
total used free shared buffers cached
Mem: 3016 358 2657 0 19 158
-/+buffers/cache: 180 2835
Swap: 3023 0 3023
[root@wjq ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_wjq-lv_root
26G 2.8G 22G 12% /
tmpfs 1.5G 72K 1.5G 1% /dev/shm
/dev/sda1 485M 38M 423M 9% /boot
/dev/mapper/vg_wjq-lv_home
4.0G 137M 3.7G 4% /home
/dev/mapper/vg_wjq-lv_u01
66G 180M 62G 1% /u01
4、 查看操作系统架构
[root@wjq~]# cat/proc/version
Linuxversion 2.6.32-358.el6.x86_64 (mockbuild@x86-022.build.eng.bos.redhat.com) (gccversion 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Tue Jan 29 11:47:41 EST2013
[root@wjq ~]# lsb_release -a
LSBVersion: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
DistributorID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 6.4(Santiago)
Release: 6.4
Codename: Santiago
[root@wjq~]# uname -r
2.6.32-358.el6.x86_64
5、 安装软件包
binutils-2.20.51.0.2-5.11.el6(x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
libXext-1.1 (x86_64)
libXext-1.1 (i686)
libXtst-1.0.99.2 (x86_64)
libXtst-1.0.99.2 (i686)
libX11-1.3 (x86_64)
libX11-1.3 (i686)
libXau-1.0.5 (x86_64)
libXau-1.0.5 (i686)
libxcb-1.5 (x86_64)
libxcb-1.5 (i686)
libXi-1.3 (x86_64)
libXi-1.3 (i686)
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
6、 禁用SELinux和防火墙
[root@wjqsofrware]# vim/etc/selinux/config
# Thisfile controls the state of SELinux on the system.
#SELINUX= can take one of these three values:
# enforcing - SELinux security policy isenforced.
# permissive - SELinux prints warningsinstead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
#SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes areprotected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
SELinux 的不正确配置会影响网络
(1)enforcing--- SELinux security policy is enforced.代表记录警告且阻止可疑行为
(2)permissive --- SELinux prints warnings instead of 代表仅记录安全警告但不阻止可疑行为
(3)disabled --- SELinux is fully disabled.SELinux 被禁用
SELINUXTYPE设置
(1)targeted 代表仅针对预制的几种网络服务和访问请求使用 SELinux 保护,
(2)strict 代表所有网络服务和访问请求都要经过 SELinux。
查看当前系统的安全策略
[root@wjq~]# sestatus
SELinuxstatus: disabled
[root@wjq~]# getenforce
Disabled
[root@wjqsofrware]#service iptables stop
iptables:Flushing firewall rules: [ OK ]
iptables:Setting chains to policy ACCEPT: filter [ OK ]
iptables:Unloading modules: [ OK ]
[root@wjqsofrware]# chkconfigiptables off
7、 解压安装包,设置环境变量
[root@wjqsofrware]#unziplinuxx64_12201_database.zip
[oracle@wjq~]$ vim.bash_profile
exportORACLE_BASE=/u01/app/oracle
exportORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1
exportORACLE_SID=seiang
exportORACLE_OWNER=oracle
exportORACLE_TERM=vt100
exportPATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
exportPATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
exportBASE_PATH=/usr/sbin:$PATH; export BASE_PATH
exportPATH=$ORACLE_HOME/bin:$BASE_PATH
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
exportORACLE_HOSTNAME=wjq.comsys.com
exportDB_UNIQUE_NAME=prod
exportCVUQDISK_GRP=oinstall
umask022
[oracle@wjq~]$ source.bash_profile
8、 设置内核参数
[root@wjqsofrware]# vim/etc/sysctl.conf
fs.aio-max-nr= 1048576
fs.file-max= 6815744
kernel.shmall= 2097152
kernel.shmmax= 1349242060
kernel.shmmni= 4096
kernel.sem= 250 32000 100 128
net.ipv4.ip_local_port_range= 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586
[root@wjqsofrware]# sysctl-a //让内核参数文件立即生效
shmmax=物理内存*80%*80%,单位是字节
kernel.shmmax:表示单个共享内存段的最大值,以字节为单位,此值一般为物理内存的一半,不过大一点也没关系,这里设定的为4GB,即"4294967295/1024/1024/1024=4G"。
kernel.shmmin:表示单个共享内存段的最小值,默认为1byte
kernel.shmall:表示整个系统范围内可用共享内存页的总量,单位是页(page),在32位系统上一页等于4kB,也就是4096字节。计算公式是:shmmax/PAGE_SIZE
kernel.shmmni:表示整个系统范围内内存段的最大数量,一般为4096.
ip_local_port_range :表示端口的范围。在监听器帮助客户端进程和服务器进程建立连接时,会用到指定范围内的端口。
kernel.sem :表示设置的信号量,这4个参数内容大小固定。
net.core.rmem_default :表示接收套接字缓冲区大小的缺省值(以字节为单位)。
net.core.rmem_max :表示接收套接字缓冲区大小的最大值(以字节为单位)
net.core.wmem_default :表示发送套接字缓冲区大小的缺省值(以字节为单位)。
net.core.wmem_max :表示发送套接字缓冲区大小的最大值(以字节为单位)。
9、 修改资源控制文件
[root@wjqsofrware]# vim/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
资源限制是针对单个进程的限制,不是针对整个系统总的设置
修改limits.conf以后,将马上生效。但是,如果用户已经登录系统,那么对于该用户的限制将在下一次用户重新登录以后才生效。如果要让对该用户的限制生效,只能让该用户注销然后重新登录就可以了。
/etc/security/limits.conf
core - 限制内核文件的大小
date - 最大数据大小
fsize - 最大文件大小
memlock - 最大锁定内存地址空间
nofile - 打开文件的最大数目
rss - 最大持久设置大小
stack - 最大栈大小
cpu - 以分钟为单位的最多 CPU 时间
noproc - 进程的最大数目
as - 地址空间限制
maxlogins - 此用户允许登录的最大数目
nofile - 打开文件的最大数目,该值不能等于/proc/sys/fs/file-max,如果等于file-max且打开的文件句柄的数量达到file-max,用户将不能登陆操作系统。
二、安装Oracle软件
1、 相应文件模板的存放位置
[root@wjqsofrware]# find/ -name *.rsp
/u01/sofrware/database/response/netca.rsp
/u01/sofrware/database/response/db_install.rsp
/u01/sofrware/database/response/dbca.rsp
2、 浏览响应文件内容,并编辑响应文件
[root@wjqresponse]# ll
total64
drwxr-xr-x2 root root 4096 Jul 5 16:32 backup.rsp
-rwxrwxr-x1 root root 25502 Jan 5 14:00 dbca.rsp
-rw-rw-r--1 root root 22924 Jan 26 21:44 db_install.rsp
-rwxrwxr-x1 root root 6209 Jun 20 2016 netca.rsp
浏览响应文件内容
[oracle@wjqdatabase]$ sed-n '/^[^#]/p' response/db_install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.2.0
oracle.install.option=
UNIX_GROUP_NAME=
INVENTORY_LOCATION=
ORACLE_HOME=
ORACLE_BASE=
oracle.install.db.InstallEdition=
oracle.install.db.OSDBA_GROUP=
oracle.install.db.OSOPER_GROUP=
oracle.install.db.OSBACKUPDBA_GROUP=
oracle.install.db.OSDGDBA_GROUP=
oracle.install.db.OSKMDBA_GROUP=
oracle.install.db.OSRACDBA_GROUP=
oracle.install.db.rac.configurationType=
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=false
oracle.install.db.racOneServiceName=
oracle.install.db.rac.serverpoolName=
oracle.install.db.rac.serverpoolCardinality=
oracle.install.db.config.starterdb.type=
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.ConfigureAsContainerDB=
oracle.install.db.config.PDBName=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=
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.DBSNMP=
oracle.install.db.config.starterdb.password.PDBADMIN=
oracle.install.db.config.starterdb.managementOption=
oracle.install.db.config.starterdb.omsHost=
oracle.install.db.config.starterdb.omsPort=
oracle.install.db.config.starterdb.emAdminUser=
oracle.install.db.config.starterdb.emAdminPassword=
oracle.install.db.config.starterdb.enableRecovery=
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=
DECLINE_SECURITY_UPDATES=
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
COLLECTOR_SUPPORTHUB_URL=
编辑Oracle数据库软件响应文件db_install.rsp
[root@wjqresponse]# vimdb_install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.2.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.rac.configurationType=
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=false
oracle.install.db.racOneServiceName=
oracle.install.db.rac.serverpoolName=
oracle.install.db.rac.serverpoolCardinality=
oracle.install.db.config.starterdb.type=
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.ConfigureAsContainerDB=
oracle.install.db.config.PDBName=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=
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.DBSNMP=
oracle.install.db.config.starterdb.password.PDBADMIN=
oracle.install.db.config.starterdb.managementOption=
oracle.install.db.config.starterdb.omsHost=
oracle.install.db.config.starterdb.omsPort=
oracle.install.db.config.starterdb.emAdminUser=
oracle.install.db.config.starterdb.emAdminPassword=
oracle.install.db.config.starterdb.enableRecovery=
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=
COLLECTOR_SUPPORTHUB_URL=
3、 获取帮助,启动静默安装
在静默安装Oracle软件之前,如果没有配置/etc/hosts文件,将会出现如五(1)的错误。
[oracle@wjqdatabase]$./runInstaller -help
[oracle@wjqdatabase]$./runInstaller -silent -ignoreSysPrereqs -ignorePrereq -responseFile/u01/sofrware/database/response/db_install.rsp
StartingOracle Universal Installer...
CheckingTemp space: must be greater than 500 MB. Actual 18788 MB Passed
Checkingswap space: must be greater than 150 MB. Actual 3023 MB Passed
Preparingto launch Oracle Universal Installer from /tmp/OraInstall2017-07-06_02-07-35PM.Please wait ...[oracle@wjq database]$ You can find the log of this installsession at:
/u01/app/oraInventory/logs/installActions2017-07-06_02-07-35PM.log
The installation of Oracle Database 12cwas successful.
Pleasecheck '/u01/app/oraInventory/logs/silentInstall2017-07-06_02-07-35PM.log' formore details.
As a root user, execute the followingscript(s):
1. /u01/app/oraInventory/orainstRoot.sh
2. /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
Successfully Setup Software.
-silent 表示静默安装
-noconfig 表示只安装软件
-responseFile 指定响应文件
4、 监控安装过程所产生的日志
[root@wjqresponse]# tail-f /u01/app/oraInventory/logs/installActions2017-07-06_02-07-35PM.log
INFO:Using paramFile: /u01/sofrware/database/install/oraparam.ini
INFO:
INFO:
INFO: CheckingTemp space: must be greater than 500 MB. Actual 18788 MB Passed
INFO:Checking swap space: must be greater than 150 MB. Actual 3023 MB Passed
INFO:
INFO:The commandline for unzip:
INFO:/u01/sofrware/database/install/unzip -qqqo ../stage/Components/oracle.jdk/1.8.0.91.0/1/DataFiles/\*.jar-d
/tmp/OraInstall2017-07-06_02-07-35PM
INFO:Using the umask value '022' available from oraparam.ini
INFO:INFO: Oracle Universal Installer Version 12.2.0.1.4
INFO:
INFO:Execvp of the child jre : the cmdline is/tmp/OraInstall2017-07-06_02-07-35PM/jdk/jre/bin/java, and the arg
v is
INFO:/tmp/OraInstall2017-07-06_02-07-35PM/jdk/jre/bin/java
INFO:-Doracle.installer.library_loc=/tmp/OraInstall2017-07-06_02-07-35PM/oui/lib/linux64
INFO:-Doracle.installer.oui_loc=/tmp/OraInstall2017-07-06_02-07-35PM/oui
INFO:-Doracle.installer.bootstrap=TRUE
INFO:-Doracle.installer.startup_location=/u01/sofrware/database/install
INFO:-Doracle.installer.jre_loc=/tmp/OraInstall2017-07-06_02-07-35PM/jdk/jre
INFO:-Doracle.installer.nlsEnabled="TRUE"
INFO:-Doracle.installer.prereqConfigLoc=
INFO:-Doracle.installer.unixVersion=2.6.32-358.el6.x86_64
………
………
INFO:Completed executing action at state
INFO:Waiting for completion of background operations
INFO:Completed background operations
INFO:Waiting for completion of background operations
INFO:Completed background operations
INFO:Moved to state
INFO:Waiting for completion of background operations
INFO:Completed background operations
INFO:Validating state
WARNING:Validation disabled for the state finish
INFO:Completed validating state
INFO:Terminating all background operations
INFO:Terminated all background operations
INFO:Successfully executed the flow in SILENT mode
INFO:Dispose the current Session instance
INFO:Dispose the install area control object
INFO:Update the state machine to STATE_CLEAN
INFO:Finding the most appropriate exit status for the current application
INFO:Exit Status is 0
INFO:Shutdown Oracle Database 12c Release 2 Installer
5、安装过程,以root用户运行相应的脚本
[root@wjq~]# /u01/app/oraInventory/orainstRoot.sh
Changingpermissions of /u01/app/oraInventory.
Addingread,write permissions for group.
Removingread,write,execute permissions for world.
Changinggroupname of /u01/app/oraInventory to oinstall.
Theexecution of the script is complete.
[root@wjq~]# /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
Check/u01/app/oracle/product/12.2.0/dbhome_1/install/root_wjq.comsys.com_2017-07-06_14-23-00-707842960.logfor the output of root script
三、配置监听器
1、 浏览Oracle监听响应文件netca.rsp
[oracle@wjqdatabase]$ sed-n '/^[^#]/p' response/netca.rsp
[GENERAL]
RESPONSEFILE_VERSION="12.2"
CREATE_TYPE="CUSTOM"
[oracle.net.ca]
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE=""typical""
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START=""LISTENER""
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
NSN_NUMBER=1
NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
NSN_SERVICE={"PLSExtProc"}
NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}
2、 编辑监听器配置响应文件netca.rsp
[oracle@wjqdatabase]$ vimresponse/netca.rsp
[GENERAL]
RESPONSEFILE_VERSION="12.2"
CREATE_TYPE="CUSTOM"
[oracle.net.ca]
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE=""typical""
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START=""LISTENER""
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
NSN_NUMBER=1
NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
NSN_SERVICE={"PLSExtProc"}
NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}
3、静默安装监听器
[oracle@wjqdatabase]$ $ORACLE_HOME/bin/netca-silent -responsefile /u01/sofrware/database/response/netca.rsp
Parsingcommand line arguments:
Parameter "silent" = true
Parameter "responsefile" =/u01/sofrware/database/response/netca.rsp
Doneparsing command line arguments.
OracleNet Services Configuration:
Profileconfiguration complete.
OracleNet Listener Startup:
Running Listener Control:
/u01/app/oracle/product/12.2.0/dbhome_1/bin/lsnrctl start LISTENER
ListenerControl complete.
Listener started successfully.
Listener configuration complete.
Oracle Net Services configurationsuccessful. The exit code is 0
4、查看监听状态,并启动监听器
[oracle@wjqdatabase]$ lsnrctlstatus
LSNRCTLfor Linux: Version 12.2.0.1.0 - Production on 06-JUL-2017 14:46:27
Copyright(c) 1991, 2016, Oracle. All rightsreserved.
Connectingto (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=wjq.comsys.com)(PORT=1521)))
STATUSof the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version12.2.0.1.0 - Production
StartDate 06-JUL-2017 14:43:52
Uptime 0 days 0 hr. 2 min. 34 sec
TraceLevel off
Security ON: Local OS Authentication
SNMP OFF
ListenerParameter File /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
ListenerLog File /u01/app/oracle/diag/tnslsnr/wjq/listener/alert/log.xml
ListeningEndpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=wjq.comsys.com)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Thelistener supports no services
Thecommand completed successfully
四、创建数据库
1、 浏览Oracle数据库响应文件dbca.rsp
[oracle@wjqdatabase]$ sed-n '/^[^#]/p' response/dbca.rsp
responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v12.2.0
gdbName=
sid=
databaseConfigType=
RACOneNodeServiceName=
policyManaged=
createServerPool=
serverPoolName=
cardinality=
force=
pqPoolName=
pqCardinality=
createAsContainerDatabase=
numberOfPDBs=
pdbName=
useLocalUndoForPDBs=
pdbAdminPassword=
nodelist=
templateName=
sysPassword=
systemPassword=
oracleHomeUserPassword=
emConfiguration=
emExpressPort=5500
runCVUChecks=
dbsnmpPassword=
omsHost=
omsPort=
emUser=
emPassword=
dvConfiguration=
dvUserName=
dvUserPassword=
dvAccountManagerName=
dvAccountManagerPassword=
olsConfiguration=
datafileJarLocation=
datafileDestination=
recoveryAreaDestination=
storageType=
diskGroupName=
asmsnmpPassword=
recoveryGroupName=
characterSet=
nationalCharacterSet=
registerWithDirService=
dirServiceUserName=
dirServicePassword=
walletPassword=
listeners=
variablesFile=
variables=
initParams=
sampleSchema=
memoryPercentage=
databaseType=
automaticMemoryManagement=
totalMemory=
2、 编辑响应文件dbca.rsp
[oracle@wjqdatabase]$ vim response/dbca.rsp responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v12.2.0
gdbName=prod.comsys.com
sid=seiang
databaseConfigType=
RACOneNodeServiceName=
policyManaged=
createServerPool=
serverPoolName=
cardinality=
force=
pqPoolName=
pqCardinality=
createAsContainerDatabase=
numberOfPDBs=
pdbName=
useLocalUndoForPDBs=
pdbAdminPassword=
nodelist=
templateName=General_Purpose.dbc
sysPassword=oracle
systemPassword=oracle
oracleHomeUserPassword=oracle
emConfiguration=
emExpressPort=5500
runCVUChecks=
dbsnmpPassword=
omsHost=
omsPort=
emUser=
emPassword=
dvConfiguration=
dvUserName=
dvUserPassword=
dvAccountManagerName=
dvAccountManagerPassword=
olsConfiguration=
datafileJarLocation=
datafileDestination=
recoveryAreaDestination=
storageType=
diskGroupName=
asmsnmpPassword=
recoveryGroupName=
characterSet=
nationalCharacterSet=
registerWithDirService=
dirServiceUserName=
dirServicePassword=
walletPassword=
listeners=
variablesFile=
variables=
initParams=
sampleSchema=true
memoryPercentage=
databaseType=
automaticMemoryManagement=
totalMemory=
3、静默创建数据库
[oracle@wjqtemplates]$ $ORACLE_HOME/bin/dbca-silent -createDatabase -responseFile /u01/sofrware/database/response/dbca.rsp
[WARNING][DBT-06208] The 'SYS' password entered does not conform to the Oraclerecommended standards.
CAUSE:
a.Oracle recommends that the password entered should be at least 8 characters inlength, contain at least 1 uppercase character, 1 lower case character and 1digit [0-9].
b.Thepassword entered is a keyword that Oracle does not recommend to be used aspassword
ACTION: Specify a strong password. Ifrequired refer Oracle documentation for guidelines.
[WARNING][DBT-06208] The 'SYSTEM' password entered does not conform to the Oraclerecommended standards.
CAUSE:
a.Oracle recommends that the password entered should be at least 8 characters inlength, contain at least 1 uppercase character, 1 lower case character and 1digit [0-9].
b.Thepassword entered is a keyword that Oracle does not recommend to be used aspassword
ACTION: Specify a strong password. Ifrequired refer Oracle documentation for guidelines.
Copyingdatabase files
1%complete
2%complete
18% complete
33%complete
Creatingand starting Oracle instance
35%complete
40%complete
44%complete
49%complete
53%complete
54%complete
55%complete
58%complete
CompletingDatabase Creation
59%complete
60%complete
61%complete
64%complete
68%complete
69%complete
ExecutingPost Configuration Actions
100%complete
Look atthe log file "/u01/app/oracle/cfgtoollogs/dbca/prod/prod.log" forfurther details.
3、测试实例是否注册成功和能否登录到数据库
[oracle@wjqdatabase]$lsnrctl status
LSNRCTLfor Linux: Version 12.2.0.1.0 - Production on 07-JUL-2017 15:05:17
Copyright(c) 1991, 2016, Oracle. All rightsreserved.
Connectingto (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=wjq.comsys.com)(PORT=1521)))
STATUSof the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version12.2.0.1.0 - Production
StartDate 06-JUL-2017 14:43:52
Uptime 1 days 0 hr. 21 min. 25 sec
TraceLevel off
Security ON: Local OS Authentication
SNMP OFF
ListenerParameter File /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
ListenerLog File /u01/app/oracle/diag/tnslsnr/wjq/listener/alert/log.xml
ListeningEndpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=wjq.comsys.com)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
ServicesSummary...
Service"prod.comsys.com" has 1 instance(s).
Instance "seiang", status READY,has 1 handler(s) for this service...
Service"seiangXDB.comsys.com" has 1 instance(s).
Instance "seiang", status READY,has 1 handler(s) for this service...
Thecommand completed successfully
[oracle@wjqdatabase]$ sqlplus/ as sysdba
SQL*Plus:Release 12.2.0.1.0 Production on Fri Jul 7 15:06:40 2017
Copyright(c) 1982, 2016, Oracle. All rightsreserved.
Connectedto:
OracleDatabase 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
SQL>select status from v$instance;
STATUS
------------
OPEN
至此,静态安装Oracle12.2结束,其他复杂参数的配置请参考Oracle官方文档!
五、遇到的错误以及解决方法
1、安装Oracle软件时报错:PRVF-0002 : Could not retrieve local nodename.
查看日志信息
[root@wjq~]# tail -f /tmp/OraInstall2017-07-06_01-49-38PM/installActions2017-07-06_01-49-38PM.log
INFO:Setting value for the property:configcmds in the bean:configcmdmappings
SEVERE:[FATAL] PRVF-0002: could not retrieve local node name.
Referassociated stacktrace#oracle.install.commons.util.exception.AbstractErrorAdvisor:37
INFO:Advice is ABORT
SEVERE:Unconditional Exit
INFO:Adding ExitStatus FAILURE to the exit status set
WARNING:A log of this session is currently saved as:/tmp/OraInstall2017-07-06_01-49-38PM/installActions2017-07-06_01-49-38PM.log.Oracle recommends that if you want to keep this log, you should move it fromthe temporary location.
INFO:Finding the most appropriate exit status for the current application
INFO:Exit Status is -1
INFO:Shutdown Oracle Database 12c Release 2 Installer
猜测是找不到主机名的对应ip
解决办法:
修改了下/etc/hosts
[root@wjq~]# vim/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6
10.1.1.45 wjq.comsys.com wjq
2、安装Oracle软件时报错:Invalid My Oracle Supportcredentials. Specify the correct email address and password that you use to login to My Oracle Support.
查看日志信息
[root@wjq ~]# tail -f/tmp/OraInstall2017-07-06_01-57-21PM/installActions2017-07-06_01-57-21PM.log
INFO: Waiting for completion of backgroundoperations
INFO: Completed background operations
INFO: Validating state
SEVERE: Invalid My Oracle Support credentials. Specify the correctemail address and password that you use to log in to My Oracle Support.
After 2 more incorrect attempts, the product will be registeredanonymously with the specified email address.
INFO: Adding ExitStatusVAR_VALIDATION_FAILURE to the exit status set
WARNING: A log of this session is currentlysaved as:/tmp/OraInstall2017-07-06_01-57-21PM/installActions2017-07-06_01-57-21PM.log.Oracle recommends that if you want to keep this log, you should move it fromthe temporary location.
INFO: Finding the most appropriate exitstatus for the current application
INFO: Exit Status is -2
INFO: Shutdown Oracle Database 12c Release2 Installer
原因所在:
相应文件db_install.rsp文件中的参数MYORACLESUPPORT_USERNAME和MYORACLESUPPORT_PASSWORD配置的有问题
解决办法:
这两个参数不进行设置
3、 静默创建数据库时报错:[DBT-10503]Invalid template file specified.
出现这个报错信息的原因是:dbcs.rsp响应文件中的参数templateName配置出现错误,下面的这个东西就是咱们在建库的时候选择的模板,general purpose还是Data warehouing还是custom。这个东西在该路径下$ORACLE_HOME/assistants/dbca/templates
[oracle@wjq ~]$ cd $ORACLE_HOME/assistants/dbca/templates
[oracle@wjq templates]$ ll
total 411616
-rw-r----- 1 oracle oinstall 4697 Jan 26 15:38 Data_Warehouse.dbc
//数据仓库的模板
-rw-r----- 1 oracle oinstall 4577 Jan 26 15:38 General_Purpose.dbc
//标准的模板
-rw-r----- 1 oracle oinstall 10578 Jun 10 2016 New_Database.dbt
//自定义的模板
-rw-r----- 1 oracle oinstall 121667584 Jan26 15:30 pdbseed.dfb
-rw-r----- 1 oracle oinstall 6685 Jan 26 15:30 pdbseed.xml
-rw-r----- 1 oracle oinstall 18726912 Jan 26 15:37 Seed_Database.ctl
//这个就是恢复的种子数据库的控制文件
-rw-r----- 1 oracle oinstall 281059328 Jan26 15:37 Seed_Database.dfb
//这个就是种子数据库的备份片,加上控制文件就能恢复出一个数据库来
解决方法:
将dbca.rsp响应文件中的参数按照如下的方式进行设置:templateName=General_Purpose.dbc
4、其他错误
特别要注意的是,等号两边不能有空格:
oracle.install.option=INSTALL_DB_SWONLY
DECLINE_SECURITY_UPDATES要设置成true
INFO: Adding ExitStatus VAR_VALIDATION_FAILURE to the exit status set
作者:SEian.G(苦练七十二变,笑对八十一难)
◇本文在ITPUB:http://blog.itpub.net/31015730/
51CTO:http://seiang.blog.51cto.com/上有同步更新
◇本文itpub地址:http://blog.itpub.net/31015730/viewspace-2137909/
◇本文51CTO地址:http://seiang.blog.51cto.com/10819863/1946087