CentOS7.5 静默安装Oracle11gR2
修改主机名称 hostnamectl set-hostname oracle
- (一)安装Oracle依赖包
1、安装rpm包
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel
2、检查是否有遗漏
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"
3、补安装遗漏的包
wget http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
- (二)创建安装用户组和用户
1、创建用户组
groupadd oinstall -g 2000 && groupadd dba -g 2001 && groupadd asmadmin -g 2002 && groupadd asmdba -g 2003
2、创建用户和密码
useradd oracle -g oinstall -G dba,asmdba
passwd oracle
- (三)优化内核参数
1、打开参数文件
vi /etc/sysctl.conf
2、修改参数文件
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=419430
kernel.shmmni=4096
kernel.shmmax = 1073741824
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
3、令参数生效
/sbin/sysctl -p
- (四)限制Oracle用户权限
1、vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
2、vi /etc/pam.d/login
session required /lib64/security/pam_limits.so
session required pam_limits.so
3、vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
(五)创建安装目录并赋予权限
mkdir -p /db/oracle/product/11.2.0
mkdir /db/oracle/oradata
mkdir /db/oracle/inventory
mkdir /db/oracle/recovery
chown -R oracle:oinstall /db
chmod -R 775 /db
- (六)切换到Oracle用户,配置oracle环境变量
1、su oracle
vi ~/.bashrc
export ORACLE_HOSTNAME=oracle
export ORACLE_BASE=/db/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
cd ~ && source .bashrc
#使环境变量生效
- (七)上传安装包并解压
1、切换到root用户
2、cd /tmp && rz
利用xshell上传安装包,等待上传完成;
3、unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip
4、vi database/response/db_install.rsp
5、修改参数
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracle
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/db/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/db/oracle/product/11.2.0
ORACLE_BASE=/db/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
- (八)关闭selinux 和防火墙
vi /etc/selinux/config
,设置SELINUX= enforcing 为SELINUX=disabled
查看防火墙状态:systemctl status firewalld
停止防火墙:systemctl stop firewalld
- (九)安装
1、避免报错:unset DISPLAY
2、切换到 oracle用户
3、cd /tmp/database
4、./runInstaller -silent -ignorePrereq -ignoreSysPreReqs -responseFile /tmp/database/response/db_install.rsp
-
(十)root身份运行两个脚本
/db/oracle/inventory/orainstRoot.sh
/db/oracle/product/11.2.0/root.sh -
(十一) oracle账户下配置监听
netca /silent /responsefile /tmp/database/response/netca.rsp
查看监听端口:netstat -tnulp | grep 1521 有红字说明监听正在运行
- (十二)创建数据库实例
1、修改配置参数,创建数据库
vi /tmp/database/response/dbca.rsp
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/db/oracle/oradata
RECOVERYAREADESTINATION=/db/oracle/recovery
CHARACTERSET = "AL32UTF8"
TOTALMEMORY = "1638" #给了内存的40%
2、修改init.ora,建库
vi /db/oracle/product/11.2.0/dbs/init.ora
把里面所有的<ORACLE_BASE>改成真正的ORACLE_BASE,即:/db/oracle后建库
dbca -silent -responseFile /tmp/database/response/dbca.rsp
3、设置数据库和监听开机自动启动
(1)vim /etc/oratab
orcl:/data0/app/oracle/product/11.2.0:N 将N改为Y
(2)vim /etc/rc.d/rc.local
添加下面两行
su oracle -lc "/db/oracle/product/11.2.0/bin/lsnrctl start"
su oracle -lc /db/oracle/product/11.2.0/bin/dbstart