Centos6.x Oracle静默安装

#!/bin/bash
#oracle install for centos 6.8
#----安装依赖包-----
yum -y install  gcc gcc-c++ make binutilscompat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc  glibc-commonglibc-devel libaio libaio-devel libgcclibstdc++ libstdc++-devel unixODBC unixODBC-devel

#----创建用户-----
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
#----修改密码-----
echo "oracle" | passwd --stdin oracle

#----修改环境变量----
echo 'export ORACLE_BASE=/data/oracle' >>/home/oracle/.bashrc
echo 'export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1' >>/home/oracle/.bashrc
echo 'export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin' >>/home/oracle/.bashrc
echo 'export ROACLE_PID=orcl11g' >>/home/oracle/.bashrc
echo 'export NLS_LANG=AMERICAN_AMERICA.AL32UTF8' >>/home/oracle/.bashrc
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib' >>/home/oracle/.bashrc
echo 'export ORACLE_SID=orcl11g' >>/home/oracle/.bashrc

#----修改内核参数-------
sed -i '$ a\ ' /etc/sysctl.conf
sed -i '$ a\ ' /etc/sysctl.conf
sed -i '$ a\ kernel.shmall = 2097152' /etc/sysctl.conf 
sed -i '$ a\ kernel.shmmax = 2147483648' /etc/sysctl.conf 
sed -i '$ a\ kernel.shmmni = 4096' /etc/sysctl.conf 
sed -i '$ a\ # semaphores: semmsl, semmns, semopm, semmni' /etc/sysctl.conf
sed -i '$ a\ kernel.sem = 250 32000 100 128' /etc/sysctl.conf
sed -i '$ a\ fs.file-max = 65536' /etc/sysctl.conf
sed -i '$ a\ net.ipv4.ip_local_port_range = 1024 65000' /etc/sysctl.conf
sed -i '$ a\ net.core.rmem_default=262144' /etc/sysctl.conf
sed -i '$ a\ net.core.rmem_max=262144' /etc/sysctl.conf
sed -i '$ a\ net.core.wmem_default=262144' /etc/sysctl.conf
sed -i '$ a\ net.core.wmem_max=262144' /etc/sysctl.conf

#----修改limit.conf-----
sed -i '$ a\oracle           soft    nproc   2047' /etc/security/limits.conf
sed -i '$ a\oracle           hard    nproc   16384' /etc/security/limits.conf
sed -i '$ a\oracle           soft    nofile  1024' /etc/security/limits.conf
sed -i '$ a\oracle           hard    nofile  65536' /etc/security/limits.conf
sed -i '$ a\oracle           soft    stack   102405' /etc/security/limits.conf
#----修改pam.d/login认证----
sed -i '$ a\session    required     pam_limits.so' /etc/pam.d/login

#----解压包----
cd /data
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip 

#----移动包-----
#mv /tmp/database/ /opt/

#----创建目录----授权755----改属主和属组----
mkdir /data/oracle/oraInventory -p
chmod 755  /data/oracle/oraInventory
chown -R oracle.oinstall /data/oracle

#----创建/etc/oraInst.loc文件----
echo 'inventory_loc=/data/oracle/oraInventory' >>/etc/oraInst.loc
echo 'inst_group=oracle' >>/etc/oraInst.loc


#----oracle--install
sed -i 's#oracle.install.option=#oracle.install.option=INSTALL_DB_SWONLY#g' /data/database/response/db_install.rsp
sed -i 's#ORACLE_HOSTNAME=#ORACLE_HOSTNAME=ehr_db.jiahe.ct#g' /data/database/response/db_install.rsp
sed -i 's#UNIX_GROUP_NAME=#UNIX_GROUP_NAME=oinstall#g' /data/database/response/db_install.rsp
sed -i 's#SELECTED_LANGUAGES=#SELECTED_LANGUAGES=en,zh_CN#g' /data/database/response/db_install.rsp
sed -i 's#ORACLE_HOME=#ORACLE_HOME=/data/oracle/product/11.2.0/db_1#g' /data/database/response/db_install.rsp
sed -i 's#ORACLE_BASE=#ORACLE_BASE=/data/oracle#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.InstallEdition=#oracle.install.db.InstallEdition=EE#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.DBA_GROUP=#oracle.install.db.DBA_GROUP=dba#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.OPER_GROUP=#oracle.install.db.OPER_GROUP=oinstall#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.type=#oracle.install.db.config.starterdb.type=GENERAL_PURPOSE#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.globalDBName=#oracle.install.db.config.starterdb.globalDBName=ora11g#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.SID=#oracle.install.db.config.starterdb.SID=orcl11g#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.memoryLimit=#oracle.install.db.config.starterdb.memoryLimit=2048#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.storageType=#oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.password.ALL=#oracle.install.db.config.starterdb.password.ALL=oracle#g' /data/database/response/db_install.rsp
sed -i 's#DECLINE_SECURITY_UPDATES=#DECLINE_SECURITY_UPDATES=true#g' /data/database/response/db_install.rsp
sed -i 's#INVENTORY_LOCATION=#INVENTORY_LOCATION=/data/oracle/oraInventory#g' /data/database/response/db_install.rsp
sed -i 's#oracle.install.db.config.starterdb.characterSet=AL32UTF8#oracle.install.db.config.starterdb.characterSet=ZHS16GBK#g' /data/database/response/db_install.rsp

sed -i 's$#CHARACTERSET = "US7ASCII"$CHARACTERSET = "ZHS16GBK"$g'  /data/database/response/dbca.rsp
sed -i 's$#NATIONALCHARACTERSET= "UTF8"$NATIONALCHARACTERSET= "ZHS16GBK"$g' /data/database/response/dbca.rsp
sed -i 's#GDBNAME = "orcl11g.us.oracle.com"#GDBNAME = "ehr_db.jiahe.ct"#g' /data/database/response/dbca.rsp



echo "使用oracle用户执行如下命令"
echo "##################################################"
su -l oracle -c 'source ~/.bash_profile;export LC_ALL=en_US;
#切换oracle用户
su - oracle
/data/database/runInstaller -silent  -responseFile  /data/database/response/db_install.rsp'


#----oracle--listion
su -l oracle -c '$ORACLE_HOME/bin/netca /silent /responseFile /data/database/response/netca.rsp'


#----dbca建库

su -l oracle -c '$ORACLE_HOME/bin/dbca -silent -responseFile  /data/database/response/dbca.rsp -sysPassword oracle -systemPassword oracle'

猜你喜欢

转载自www.cnblogs.com/alber/p/9495019.html