OEL7.0 上静默安装oracle数据库

 静默安装本人使用的也比较少,基本上不需要使用静默安装。就算是文本安装的系统,也使用Xmanager 来重定向图形化。但是万事总有个例外的,比如在MAC 操作系统上,貌似没有Xmananger , 那该上虚拟机如果只装了文本界面就只能静默安装了,如果再装个图形化那就另一个情况了。

地点: 杭州·滨江

微信公众号:HopToad

Email: appdevzw@163.com

欢迎转载 转载标注出处::

http://blog.csdn.net/notbaron/article/details/42396485 

 

1.  操作系统环境设置

根据不同操作系统安装不同ORACLE数据库版本,配置有略微差别,此处不一一描述,大家根据自身环境进行设置即可。此处以OEL7.0上 12C为例。

1.1    编辑/etc/sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax=913516544

kernel.panic_on_oops=1

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 900065500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

执行sysctl –p

1.2 创建目录用户


groupadd   oinstall

groupadd   dba

groupadd   oper

groupadd   asmadmin

groupadd   asmdba

groupadd   asmoper

useradd -g oinstall -Gdba,asmdba,asmadmin,asmoper grid

useradd -g oinstall -G dba,oper,asmdbaoracle

 

mkdir -p /u01/app/12.1.0/grid

mkdir -p /u01/app/grid

mkdir -p /u01/app/oracle

chown grid:oinstall /u01/app/12.1.0/grid

chown grid:oinstall /u01/app/grid

chown -R oracle:oinstall /u01/app/oracle

chmod -R 775 /u01/

chown -R grid:oinstall /u01

修改用户密码

passwd grid

passwd oracle

 

 

1.3配置/etc/security/limits.conf


 

oracle soft nproc    2047

oracle hard nproc    16384

oracle soft nofile   1024

oracle hard nofile   65536

oracle soft stack    10240

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

grid soft stack 10240

 

1.4    设置ORACLE环境变量

export TMP=/tmp;

export TMPDIR=$TMP;

export ORACLE_BASE=/u01/app/oracle;

export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1;

export ORACLE_SID=prod;

export ORACLE_TERM=xterm;

export PATH=/usr/sbin:$PATH;

export PATH=$ORACLE_HOME/bin:$PATH;

exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;

exportCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

export NLS_DATE_FORMAT="yyyy-mm-ddHH24:MI:SS";

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;

 

 

 

1.5    修改/etc/hosts

增加主机名

2      静默安装

2.1    安装

2.1.1 编辑自动应答文件

ORACE安装本身需要和用户进行一些互动,如果想取消这些互动就必须提前将回复的内容写到一个文件中,这个文件就是自动应答文件,接下去我们开始制作该该文件。

 

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v12.1.0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=slave
UNIX_GROUP_NAME=dba
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/u01/app/oracle/product/12.1.0/db_1
ORACLE_BASE=/ u01/app/oracle/product/12.1.0
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
oracle.install.db.BACKUPDBA_GROUP=dba
oracle.install.db.DGDBA_GROUP=dba
oracle.install.db.KMDBA_GROUP=dba
oracle.install.db.isRACOneInstall=false
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
oracle.installer.autoupdates.option=SKIP_UPDATES

2.1.2 安装

命令如下:

./runInstaller-silent -noconfig -ignorePrereq -responseFile /home/oracle/database/db.rsp查看安装过程

可以到/opt/app/oraInventory/logs目录下查看安装进度

 最后出现如下:

…………………..

INFO:Completed validating state <finish>

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 1 Installer

--------------------------------------------------------------------------------

安装成功提示执行脚本

l7database]$ You can find the log of this install session at:

 /u01/app/oraInventory/logs/installActions2015-01-01_06-09-15PM.log

[oracle@oel7database]$ The installation of Oracle Database 12c was successful.

Pleasecheck '/u01/app/oraInventory/logs/silentInstall2015-01-01_06-09-15PM.log' formore details.

 

As aroot user, execute the following script(s):

         1. /u01/app/oraInventory/orainstRoot.sh

         2./u01/app/oracle/product/12.1.0/db_1/root.sh

SuccessfullySetup Software.

Asinstall user, execute the following script to complete the configuration.

         1./u01/app/oracle/product/12.1.0/db_1/cfgtoollogs/configToolAllCommandsRESPONSE_FILE=<response_file>

        Note:

         1. This script must be run on the samehost from where installer was run.

         2. This script needs a small passwordproperties file for configuration assistants that require passwords (refer toinstall guide documentation).

 

2.1.3 参数含义

-silent 表示以静默方式安装,不会有任何提示

-force 允许安装到一个非空目录

-noconfig 表示不运行配置助手netca

-responseFile 表示使用哪个响应文件,必需使用绝对路径

oracle.install.responseFileVersion 响应文件模板的版本,该参数不要更改

oracle.install.option 安装选项,本例只安装oracle软件,该参数不要更改

DECLINE_SECURITY_UPDATES 是否需要在线安全更新,设置为false,该参数不要更改

ORACLE_HOSTNAME 安装主机名

UNIX_GROUP_NAME oracle用户用于安装软件的组名

INVENTORY_LOCATION oracle产品清单目录

SELECTED_LANGUAGES oracle运行语言环境,一般包括引文和简繁体中文

ORACLE_HOME Oracle安装目录

ORACLE_BASE oracle基础目录

oracle.install.db.InstallEdition 安装版本类型,一般是企业版

oracle.install.db.isCustomInstall 是否定制安装,默认Partitioning,OLAP,RAT都选上了

oracle.install.db.customComponents 定制安装组件列表:除了以上默认的,可加上Label Security和Database Vault

oracle.install.db.DBA_GROUP oracle用户用于授予OSDBA权限的组名

oracle.install.db.OPER_GROUP oracle用户用于授予OSOPER权限的组名

 

2.2    静默配置监听

2.2.1 配置应答文件

[GENERAL]
RESPONSEFILE_VERSION="12.1"
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.2.2 执行

#netca-silent -responseFile /home/oracle/netca.rsp

执行如下:

Parsingcommand line arguments:

    Parameter "silent" = true

    Parameter "responsefile" =/home/oracle/netca.rsp

Doneparsing command line arguments.

OracleNet Services Configuration:

Profileconfiguration complete.

OracleNet Listener Startup:

    Running Listener Control:

     /u01/app/oracle/product/12.1.0/db_1/bin/lsnrctl start LISTENER

    Listener Control complete.

    Listener started successfully.

Listenerconfiguration complete.

OracleNet Services configuration successful. The exit code is 0

2.2.3 配置本地tnsname.ora 文件

PROD3 =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.203)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = prod3)

    )

  )

 

远程链接,节点关闭防火墙!

2.3    静默建库

2.3.1 生成响应文件模板:

 $ vi $DISTRIB/db_create.rsp

#--------------------------------------------------------------------

#以下参数不要更改

[GENERAL]

RESPONSEFILE_VERSION = "12.1.0"

OPERATION_TYPE = "createDatabase"

#以下参数必须设置

[CREATEDATABASE]

GDBNAME = "ORCL"

TEMPLATENAME = "General_Purpose.dbc"

#以下参数不设置则使用默认值,建议设置

TOTALMEMORY = "512"

 

 

2.3.2 静默建库 

 种子数据库和控制文件位于$ORACLE_HOME/assistants/dbca/templates/下, 即Seed_Database.dfb和Seed_Database.ctl文件, 实际上建库就是基于通过rman恢复种子数据库和控制文件来实现的.

 

$ dbca -silent -responseFile $DISTRIB/db_create.rsp

Enter SYS user password: 

<输入sys用户密码> 

Enter SYSTEM user password: 

<输入system用户密码> 

 

各参数含义如下:

-silent 表示以静默方式安装

-responseFile 表示使用哪个响应文件,必需使用绝对路径

RESPONSEFILE_VERSION响应文件模板的版本,该参数不要更改

OPERATION_TYPE安装类型,该参数不要更改

GDBNAME 全局数据库名,点号前面默认是db_name,点号后面默认就是db_domain

TEMPLATENAME建库模板名,参考各模板定义:$ORACLE_HOME/assistants/dbca/templates/*.dbc

CHARACTERSET字符集,默认是WE8MSWIN1252

TOTALMEMORY实例内存,默认是服务器物理内存的40%  

2.3.3 安装进度

 $ tail -f $ORACLE_BASE/cfgtoollogs/dbca/$ORACLE_SID/$ORACLE_SID.log

 

2.4    静默删库

2.4.1 生成响应文件模板:

 $ vi $DISTRIB/db_delete.rsp

 #以下参数无需修改更改

 [GENERAL]

 RESPONSEFILE_VERSION = "12.1.0"

 OPERATION_TYPE = "deleteDatabase" 

#以下参数根据实际情况更改 

[DELETEDATABASE] 

SOURCEDB = "ORCL" 

#--------------------------------------------------------------------

  

2.4.2 删库

$ dbca -silent -responseFile $DISTRIB/db_delete.rsp

 各参数含义如下: 

-silent 表示以静默方式删除 

-responseFile 表示使用哪个响应文件,必需使用绝对路径 

RESPONSEFILE_VERSION 响应文件模板的版本,该参数不要更改 

OPERATION_TYPE 安装类型,该参数不要更改 

SOURCEDB  数据库名,不是全局数据库名,即不包含db_domain

  

3) 查看日志信息了解进度:

 

 $ tail -100f $ORACLE_BASE/cfgtoollogs/dbca/$ORACLE_SID/$ORACLE_SID.log