#!/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 '$ aoracle soft nproc 2047' /etc/security/limits.conf sed -i '$ aoracle hard nproc 16384' /etc/security/limits.conf sed -i '$ aoracle soft nofile 1024' /etc/security/limits.conf sed -i '$ aoracle hard nofile 65536' /etc/security/limits.conf sed -i '$ aoracle soft stack 102405' /etc/security/limits.conf #----修改pam.d/login认证---- sed -i '$ asession 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'