CentOS静默安装Oracle

一、准备工作

1.安装环境介绍

系统:CentOS 7.5 64位

Oracle版本:Oracle 11gR2

2.下载Oracle安装文件

官网地址

CentOS静默安装Oracle

下载的两个压缩包:

 

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip 

3.检查系统版本

命令:$ uname -m

CentOS静默安装Oracle

命令:$ cat /etc/redhat-release

CentOS静默安装Oracle

4.修改主机名

$ sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network

$ hostname oracledb

CentOS静默安装Oracle

5.添加主机名与IP对应记录

$ vim /etc/hosts

在末尾处添加:本机IP地址    oracledb

CentOS静默安装Oracle

6.关闭Selinux

$ sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config 

$ setenforce 0

CentOS静默安装Oracle

7.创建用户和组

root用户:创建Oracle安装组oinstall,数据库管理员组dba,及Oracle用户

$ groupadd -g 200 oinstall

$ groupadd -g 201 dba

$ useradd -u 440 -g oinstall -G dba oracle #(主组oinstall,其它组:dba)

$ passwd oracle   #(P)

CentOS静默安装Oracle

$ id oracle #查看oracle用户信息

CentOS静默安装Oracle

8.修改内核参数(root用户)

$ vim /etc/sysctl.conf

在末尾添加如下内容:

net.ipv4.ip_local_port_range= 9000 65500

fs.file-max = 6815744

kernel.shmall = 10523004

kernel.shmmax = 6465333657

kernel.shmmni = 4096

kernel.sem = 250 32000 100128

net.core.rmem_default=262144

net.core.wmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_max=1048576

fs.aio-max-nr = 1048576

CentOS静默安装OracleCentOS静默安装Oracle

$ sysctl -p  #使配置生效

CentOS静默安装Oracle

9.修改系统资源限制(root用户)

$ vim /etc/security/limits.conf 

在末尾添加如下内容:

oracle  soft  nproc  2047

oracle  hard  nproc  16384

oracle  soft  nofile  1024

oracle  hard  nofile  65536

CentOS静默安装Oracle

10.修改用户验证选项(root用户)

$ vim /etc/pam.d/login

session    required     pam_namespace.so 下面添加如下内容:

session    required     pam_limits.so

CentOS静默安装Oracle

11.创建安装目录及设置权限(root用户)

$ mkdir -p /opt/app/oracle/ 

$ chmod 755 /opt/app/oracle/ 

$ chown oracle.oinstall -R /opt/app/oracle/

CentOS静默安装Oracle

 

12.设置Oracle环境变量

$ su - oracle #切换至oracle用户,可以开启两个远程窗口,分别登录root用户和oracle用户

$ vim ~/.bash_profile

在注释原PATH后,增加以下内容:

export ORACLE_BASE=/opt/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export ORACLE_SID=orcl

export ORACLE_PID=ora11g

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

CentOS静默安装Oracle

$ source ~/.bash_profile #立即生效

$ env | grep ORA #查看环境变量是否完成

CentOS静默安装Oracle

 

二、安装及配置

1.安装依赖(root用户)

所需依赖如下:

binutils-2.23.52.0.1-12.el7.x86_64

compat-libcap1-1.10-3.el7.x86_64

compat-libstdc++-33-3.2.3-71.el7.i686

compat-libstdc++-33-3.2.3-71.el7.x86_64

gcc-4.8.2-3.el7.x86_64

gcc-c++-4.8.2-3.el7.x86_64

glibc-2.17-36.el7.i686

glibc-2.17-36.el7.x86_64

glibc-devel-2.17-36.el7.i686

glibc-devel-2.17-36.el7.x86_64

ksh

libaio-0.3.109-9.el7.i686

libaio-0.3.109-9.el7.x86_64

libaio-devel-0.3.109-9.el7.i686

libaio-devel-0.3.109-9.el7.x86_64

libgcc-4.8.2-3.el7.i686

libgcc-4.8.2-3.el7.x86_64

libstdc++-4.8.2-3.el7.i686

libstdc++-4.8.2-3.el7.x86_64

libstdc++-devel-4.8.2-3.el7.i686

libstdc++-devel-4.8.2-3.el7.x86_64

libXi-1.7.2-1.el7.i686

libXi-1.7.2-1.el7.x86_64

libXtst-1.2.2-1.el7.i686

libXtst-1.2.2-1.el7.x86_64

make-3.82-19.el7.x86_64

sysstat-10.1.5-1.el7.x86_64

unixODBC-2.3.1-6.el7.x86_64 or later

unixODBC-2.3.1-6.el7.i686 or later

unixODBC-devel-2.3.1-6.el7.x86_64 or later

unixODBC-devel-2.3.1-6.el7.i686 or later

使用yum -y install安装依赖

$ yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686

检查是否全部安装,如果存在没安装的单独进行安装

$ rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel

2.安装Oracle

安装unzip:yum -y install unzip。如已安装请忽略

将下载的Oracle压缩包放入/opt目录下,在/opt目录下进行解压

$ unzip linux.x64_11gR2_database_1of2.zip

$ unzip linux.x64_11gR2_database_2of2.zip

修改database目录权限

$ chown oracle.oinstall -R /opt/database/

解压后得到database目录,其中包含response目录,该目录中有三个rsp文件,用来作为静默安装时的应答文件的模板。

三个文件作用分别是:

db_install.rsp:安装应答

dbca.rsp:创建数据库应答

netca.rsp:建立监听、本地服务名等网络设置的应答

将db_install.rsp备份一份

$ cp db_install.rsp db_install.rsp.bak

修改静默安装的配置文件

$ vim db_install.rsp

修改结果如下:

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=oracledb

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/opt/app/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/opt/app/oracle/product/11.2.0/db_1

ORACLE_BASE=/opt/app/oracle

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=dba

oracle.install.db.OPER_GROUP=oinstall

oracle.install.db.CLUSTER_NODES=

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=ora11g

oracle.install.db.config.starterdb.SID=ora11g

oracle.install.db.config.starterdb.characterSet=AL32UTF8

oracle.install.db.config.starterdb.memoryOption=true

oracle.install.db.config.starterdb.memoryLimit=1500

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.dbcontrol.enableEmailNotification=false

oracle.install.db.config.starterdb.dbcontrol.emailAddress=

oracle.install.db.config.starterdb.dbcontrol.SMTPServer=

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=FILE_SYSTEM_STORAGE

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    //一定要设为 true

PROXY_HOST=

PROXY_PORT=

PROXY_USER=

PROXY_PWD=

$ less /opt/database/response/db_install.rsp |grep -v "#"|grep -v "^$" #查看配置

开始静默安装(oracle用户)

$ cd /opt/database/ #进入/opt/database目录

$ ./runInstaller -silent -force -responseFile /opt/database/response/db_install.rsp

安装需要一段时间,如果想看安装进度,可以再打开一个窗口,输出会话日志

CentOS静默安装Oracle

$ tail -f /opt/app/oracle/oraInventory/logs/installActions2019-05-29_11-40-32AM.log

(/opt/app/oracle/oraInventory/logs/installActions2019-05-29_11-40-32AM.log上图红框部分)

当出现Successfully Setup Software.证明已经安装成功,然后根据提示以root用户执行脚本

CentOS静默安装Oracle

$ sh /opt/app/oracle/oraInventory/orainstRoot.sh

$ sh /opt/app/oracle/product/11.2.0/db_1/root.sh

CentOS静默安装Oracle

三、配置监听程序

监听命令

启动监听:lsnrctl start

停止监听:lsnrctl stop

重启监听:lsnrctl reload

查看监听:lsnrctl status

1.配置监听(oracle用户)

$ $ORACLE_HOME/bin/netca /silent /responseFile /opt/database/response/netca.rsp

CentOS静默安装Oracle

2.查看监听(oracle用户)

$ lsnrctl status

CentOS静默安装Oracle

3.静默dbca建库

$ vim /opt/database/response/dbca.rsp

修改如下内容:

GDBNAME = "orcl" //78 行 编码

SID="orcl" //149行 编码 SID

CHARACTERSET="AL32UTF8" //415行 编码

NATIONALCHARACTERSET="UTF8" //425行 编码

执行:

$ $ORACLE_HOME/bin/dbca -silent -responseFile /opt/database/response/dbca.rsp

执行完后会先清屏,然后输入两次密码后开始自动创建

CentOS静默安装Oracle

4.启动数据库

$ sqlplus / as sysdba

CentOS静默安装Oracle

使用show parameter;或者select table_name from dba_tables看看是否正常

5.开机自动监听、启动Oracle

$ vim /etc/oratab

改为如下内容:

CentOS静默安装Oracle

$ vim /etc/rc.local

在末尾添加如下内容:

su - oracle -c 'dbstart'

su - oracle -c 'lsnrctl start'

CentOS静默安装Oracle

然后执行

$ chmod +x /etc/rc.local

6.开放1521端口

查看防火墙状态

$ systemctl status firewalld.service

启动|关闭|重新启动  防火墙

$ systemctl [start|stop|restart] firewalld.service

查看端口是否开放:

$ firewall-cmd --query-port=1521/tcp

CentOS静默安装Oracle

永久开放1521端口号:

$ firewall-cmd --permanent --zone=public --add-port=1521/tcp

CentOS静默安装Oracle

重启防火墙:

$ systemctl restart firewalld.service

参考博客:

Linux CentOS7.5静默安装Oracle11gR2