Oracle 11g数据库软件和数据库静默安装

一、安装步骤简述

复制代码
本文章以linux7和11.2.0.4版本安装为案例,其它linux版本和oracle 11g版本安装都类似
1、安装操作系统
2、关闭防火墙和selinux安全设置
3、配置yum源
4、安装依赖包(oracle软件安装时必须使用到的)
5、创建用户和组(用于安装oracle数据库软件)
6、配置操作系统参数和内核限制
7、规划Oracle数据库软件和Oracle数据库安装目录
8、Oracle用户环境变量设置
9、上传和检验Oracle软件安装包
10、解压安装包
上述1-10这些步骤详见我以前的文章《Oracle 11g 单机安装总结_linux7》
11、安装数据库软件
12、安装补丁(可选项,安装数据库前将补丁安装,后续不需要运行数据字典升级脚本了)
13、安装数据库

前提说明

1、文章中的oracle安装包解压位置/u01/soft/database目录下,请根据实际环境来对应相关的目录

2、下面的所有步骤都在操作系统oracle用户下执行
su - oracle

二、Oracle数据库软件静默安装详细步骤

1、备份默认的应答文件

复制代码
cp /u01/soft/database/response/db_install.rsp  /u01/soft/database/response/db_install.rsp__$(date +%F)
grep -Ev '^#|^$' /u01/soft/database/response/db_install.rsp

2、修改默认的应答文件

复制代码
cat > /u01/soft/database/response/db_install.rsp  <<EOF
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=host01
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=true
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
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=
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
EOF

验证
cat /u01/soft/database/response/db_install.rsp

3、执行静默安装数据库软件

复制代码
1)执行静默安装(注意下面命令为一行,没有换行)
/u01/soft/database/runInstaller -silent -ignoreSysPrereqs -force -ignorePrereq -responseFile /u01/soft/database/response/db_install.rsp

2)输出过程
[oracle@host01 soft]$ /u01/soft/database/runInstaller -silent -ignoreSysPrereqs -force -ignorePrereq -responseFile /u01/soft/database/response/db_install.rsp
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB.   Actual 40717 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 2047 MB    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2026-03-09_10-49-47PM. Please wait ...
[oracle@host01 soft]$ 
[oracle@host01 soft]$ You can find the log of this install session at:
 /u01/app/oraInventory/logs/installActions2026-03-09_10-49-47PM.log
The installation of Oracle Database 11g was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2026-03-09_10-49-47PM.log' for more details.
As a root user, execute the following script(s):  //这个地方提示需要root用户执行下面两个脚本
        1. /u01/app/oraInventory/orainstRoot.sh
        2. /u01/app/oracle/product/11.2.0/db_1/root.sh

Successfully Setup Software.

3)按照提示,以root用户顺序执行两个脚本
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
        
[root@host01 ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@host01 ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
Check /u01/app/oracle/product/11.2.0/db_1/install/root_host01_2026-03-09_19-27-28.log for the output of root script

4、应答文件中的选项简要解释

复制代码
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY                 //安装类型,表示只安装数据库软件        
ORACLE_HOSTNAME=host01                                  //主机名称(hostname查询)             
UNIX_GROUP_NAME=oinstall                                //安装组                               
INVENTORY_LOCATION=/u01/app/oraInventory                //INVENTORY目录(不填就是默认值)      
SELECTED_LANGUAGES=en,zh_CN                             // 选择语言                            
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1         //与.bash_profile中环境变量设置一致    
ORACLE_BASE=/u01/app/oracle                             //与.bash_profile中环境变量设置一致    
oracle.install.db.InstallEdition=EE                     // oracle版本版类,EE表示企业版         
oracle.install.db.EEOptionsSelection=false              //自定义安装,否,使用默认组件         
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0  //默认安装组件,保持不变即可
oracle.install.db.DBA_GROUP=dba                         // dba用户组 
oracle.install.db.OPER_GROUP=dba                        // oper用户组
oracle.install.db.CLUSTER_NODES=           //如果是RAC的安装,在这里指定所有的节点,我们这里是单机,保持默认为空即可
oracle.install.db.isRACOneInstall=         //RACOne方式安装,我们这里是单机,保持默认为空即可
oracle.install.db.racOneServiceName=       //racOne服务器名,我们这里是单机,保持默认为空即可
###########下面db.config选项都与安装数据库相关,我们这里上面的选项选择了只安装数据库软件,因此下面都保持默认即可,都不会起作用######
oracle.install.db.config.starterdb.type=
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.config.starterdb.characterSet=
oracle.install.db.config.starterdb.memoryOption=true
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
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=
###########后续的部分也保持默认,只需要注意DECLINE_SECURITY_UPDATES=true修改为true即可######
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=
DECLINE_SECURITY_UPDATES=true
#False表示不需要设置安全更新,注意,在11.2的静默安装中疑似有一个BUG,Response File中必须指定为true,否则会提示错误,不管是否正确填写了邮件地址
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
备注:基本上文件中的每一个选项内容,原有的应答文件中都有详细注释,如果有疑惑的可以直接查看原文件来了解

至此完成数据库软件静默安装

三、监听程序静默安装

复制代码
$ORACLE_HOME/bin/dbca -silent -responseFile  /u01/soft/database/response/dbca.rsp
备注:应答文件默认即可,不需要任何修改

四、数据库静默安装

1、备份默认的应答文件

复制代码
cp /u01/soft/database/response/dbca.rsp  /u01/soft/database/response/dbca.rsp__$(date +%F)
grep -Ev '^#|^$' /u01/soft/database/response/dbca.rsp

2、修改默认的应答文件

复制代码
cat > /u01/soft/database/response/dbca.rsp  <<EOF
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
#表示新创建数据库
OPERATION_TYPE = "createDatabase"
#-----------------------------------------------------------------------------
# CREATEDATABASE section is used when OPERATION_TYPE is defined as "createDatabase". 
#-----------------------------------------------------------------------------
[CREATEDATABASE]
#数据库的全局名称
GDBNAME = "orcl"
#RACONENODE  = "false"
#RACONENODESERVICENAME = 
#POLICYMANAGED = "false"
#CREATESERVERPOOL = "false"
#FORCE = "false"
#SERVERPOOLNAME = 
#CARDINALITY = 
#数据库sid,一般与全局保持一致
SID = "orcl"
#NODELIST=
#创建数据库时使用的模板,通用,oltp,olap,一般选择通用模板即可如下
TEMPLATENAME = "General_Purpose.dbc"
#OBFUSCATEDPASSWORDS = FALSE
#sys和system的默认密码
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
#EMCONFIGURATION = "NONE"
#DISABLESECURITYCONFIGURATION = "NONE"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
#CENTRALAGENT = 
#HOSTUSERNAME = 
#HOSTUSERPASSWORD= 
#BACKUPSCHEDULE=
#DataVault相关,一般不使用不需要设置
#DVOWNERNAME = ""
#DVOWNERPASSWORD = ""
#DVACCOUNTMANAGERNAME = ""
#DVACCOUNTMANAGERPASSWORD = ""
#DATAFILEJARLOCATION =
#数据文件,控制文件,日志文件存放位置
DATAFILEDESTINATION =/oradata
#RECOVERYAREADESTINATION=
#存储方式FS表示文件系统,默认就是这个值
STORAGETYPE=FS
#DISKGROUPNAME=DATA
#ASMSNMP_PASSWORD=""
#RECOVERYGROUPNAME=RECOVERY
#通常中文选择的有 ZHS16GBK 简体中文库,如果需要使用UTF8字符集,则建议选择unicode的 AL32UTF8 国际字符集
CHARACTERSET = "ZHS16GBK"
NATIONALCHARACTERSET= "UTF8"
#REGISTERWITHDIRSERVICE= TRUE
#DIRSERVICEUSERNAME= "name"
#DIRSERVICEPASSWORD= "password"
#WALLETPASSWORD= "password"
#LISTENERS = "listener1 listener2"
#VARIABLESFILE =
#VARIABLES =
#INITPARAMS =
#新建数据库中不创建案例用户
SAMPLESCHEMA=FALSE
#oracle使用内存占用操作系统的百分比,如果后面的TOTALMEMORY没执行,则默认40%
#MEMORYPERCENTAGE = "40"
#DATABASETYPE = "MULTIPURPOSE"
#不使用11g的新特性自动内存管理,也就是SGA_TARGET和PAG_AGGREGATE_TARGET都不用设置了,Oracle会自动调配两部分大小。使用sga和pga内存管理
AUTOMATICMEMORYMANAGEMENT = "FALSE"
#TOTALMEMORY = "800"
#-----------------------*** End of CREATEDATABASE section ***------------------------
EOF


验证
cat /u01/soft/database/response/dbca.rsp

3、执行静默安装数据库

复制代码
$ORACLE_HOME/bin/dbca -silent -responseFile  /u01/soft/database/response/dbca.rsp
Copying database files
1% complete
3% complete
11% complete
18% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log" for further details

至此完成数据库的静默安装

4、补充,另一种方式完成静默数据库安装

复制代码
dbca -silent -createDatabase \
-responseFile NO_VALUE \
-templateName General_Purpose.dbc \
-gdbname orcl \
-sid orcl \
-sysPassword oracle \
-systemPassword oracle \
-datafileDestination /oradata \
-storageType FS \
-characterSet ZHS16GBK \
-nationalCharacterSet AL16UTF16 \
-automaticMemoryManagement false \
-totalMemory 2048 \
-sampleSchema false
备注:-totalMemory 2048表示oracle总内存使用大小为2048M
相关推荐
what丶k1 小时前
如何保证 Redis 与 MySQL 数据一致性?后端必备实践指南
数据库·redis·mysql
_半夏曲2 小时前
PostgreSQL 13、14、15 区别
数据库·postgresql
把你毕设抢过来2 小时前
基于Spring Boot的社区智慧养老监护管理平台(源码+文档)
数据库·spring boot·后端
未来之窗软件服务2 小时前
数据库(九)SQL 模式操作 Excel——东方仙盟练气
数据库·sql·excel·仙盟创梦ide·东方仙盟·数据库修复
点点滴滴的记录2 小时前
Redis部署在Linux上性能高于Windows
linux·数据库·redis
lhj_loveFang_11052 小时前
Redis如何与数据库保持双写一致性
数据库·redis
闻哥2 小时前
深入Redis的RDB和AOF两种持久化方式以及AOF重写机制的分析
java·数据库·spring boot·redis·spring·缓存·面试
培小新3 小时前
MySQL 集群技术(环境+一主二从配置)
数据库·mysql
ruanyongjing3 小时前
Spring TransactionTemplate 深入解析与高级用法
java·数据库·spring