基於centos7的oracle11g單點安裝及配置

如果您在使用本文檔安裝oracle過程中存在問題,請留言

0.配置yum源

#參開地址
http://blog.csdn.net/JW_xueZhiXia/article/details/78709810

1.配置主機名

cat >> /etc/sysconfig/network <<EOF
HOSTNAME=oracle
EOF
echo oracle >/proc/sys/kernel/hostname

#將本機主機名與ip加入/etc/hosts中,填寫實際IP

echo "192.168.76.157 oracle" >> /etc/hosts 

2.關閉selinux與防火牆

echo "SELINUX=disabled" >> /etc/selinux/config
setenforce 0
systemctl stop firewalld
systemctl disable firewalld

3.配置yum安裝依賴

yum install -y gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static elfutils-libelf-devel ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel vim unzip 

yum install -y libgcc.i686 glibc.i686 glibc-devel.i686 libaio.so.1 libXext.so.6 compat-libstdc++-33.i686

#寫入/etc/profile
cat >> /etc/profile <<EOF
export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/u01/app/oracle/product/11.2.0/inventory/Scripts/ext/lib
EOF

4.創建用戶用戶組

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle 
echo "123456" | passwd --stdin oracle 

5.修改內核參數

cat >> /etc/sysctl.conf <<EOF
io-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 1073741824

kernel.shmmni = 4096

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 = 1048576
EOF

sysctl -p

6.修改用戶的限制文件

cat >> /etc/security/limits.conf << EOF
oracle           soft    nproc           2047

oracle           hard    nproc           16384

oracle           soft    nofile          1024

oracle           hard    nofile          65536

oracle           soft    stack           10240

EOF


cat >> /etc/pam.d/login <<EOF
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so
EOF

7.修改/etc/profile文件

cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then

  if [ \$SHELL = "/bin/ksh" ]; then

   ulimit -p 16384

   ulimit -n 65536

  else

   ulimit -u 16384 -n 65536

  fi

fi
EOF

8.創建目錄

mkdir -p /u01/app/oracle/product/11.2.0

mkdir /u01/app/oracle/oradata

mkdir /u01/app/oracle/inventory

mkdir /u01/app/oracle/fast_recovery_area

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

chmod -R 775 /u01/app/oracle

9.上傳包至/tmp下並解壓

#安裝包下載地址
https://updates.oracle.com/Orion/Services/download/p13390677_112040_LINUX_1of7.zip?aru=16720989&patch_file=p13390677_112040_LINUX_1of7.zip

https://updates.oracle.com/Orion/Services/download/p13390677_112040_LINUX_2of7.zip?aru=16720989&patch_file=p13390677_112040_LINUX_2of7.zip

cd /tmp
unzip p13390677_112040_LINUX_1of7.zip
unzip p13390677_112040_LINUX_2of7.zip

10.切換到oracle用戶,設置oracle用戶環境變量

su - oracle

cat >>  ~/.bash_profile <<EOF

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=\$ORACLE_BASE/product/11.2.0

ORACLE_SID=orcl

PATH=\$PATH:\$ORACLE_HOME/bin

export  ORACLE_UNQNAME=$ORACLE_SID

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

EOF

11.切換root編輯靜默安裝響應文件

#切換至root,或者exit退出oracle用戶
su -

sed -i 's#oracle.install.option=#oracle.install.option=INSTALL_DB_SWONLY#g' /tmp/database/response/db_install.rsp

sed -i 's#ORACLE_HOSTNAME=#ORACLE_HOSTNAME=oracle#g' /tmp/database/response/db_install.rsp

sed -i 's#UNIX_GROUP_NAME=#UNIX_GROUP_NAME=oinstall#g' /tmp/database/response/db_install.rsp

sed -i 's#INVENTORY_LOCATION=#INVENTORY_LOCATION=/u01/app/oracle/inventory#g' /tmp/database/response/db_install.rsp

sed -i 's#SELECTED_LANGUAGES=en#SELECTED_LANGUAGES=en,zh_CN#g' /tmp/database/response/db_install.rsp

#
sed -i 's#ORACLE_HOME=#ORACLE_HOME=/u01/app/oracle/product/11.2.0#g' /tmp/database/response/db_install.rsp

sed -i 's#ORACLE_BASE=#ORACLE_BASE=/u01/app/oracle#g' /tmp/database/response/db_install.rsp

sed -i 's#oracle.install.db.InstallEdition=#oracle.install.db.InstallEdition=EE#g' /tmp/database/response/db_install.rsp

sed -i 's#oracle.install.db.DBA_GROUP=#oracle.install.db.DBA_GROUP=dba#g' /tmp/database/response/db_install.rsp

sed -i 's#oracle.install.db.OPER_GROUP=#oracle.install.db.OPER_GROUP=dba#g' /tmp/database/response/db_install.rsp

sed -i 's#DECLINE_SECURITY_UPDATES=#DECLINE_SECURITY_UPDATES=true#g' /tmp/database/response/db_install.rsp

12.切換oracle用戶

su - neusoft
/tmp/database/runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/database/response/db_install.rsp

13.切換root執行

#按照提示切換root用戶運行腳本
su - 
sh /u01/app/oracle/inventory/orainstRoot.sh
sh /u01/app/oracle/product/11.2.0/root.sh

14.切換oracle用戶爲登錄配置監聽

su - oracle
/u01/app/oracle/product/11.2.0/bin/netca -silent -responseFile /tmp/database/response/netca.rsp

15.切換root建立新庫,同時建立對應的實例

sed -i "s#GDBNAME = \"orcl11g.us.oracle.com\"#GDBNAME = \"orcl\"#g" /tmp/database/response/dbca.rsp
sed -i "s#SID = \"orcl11g\"#SID = \"orcl\"#g" /tmp/database/response/dbca.rsp
sed -i "s/#SYSPASSWORD = \"password\"/SYSPASSWORD = \"oracle\"/g" /tmp/database/response/dbca.rsp

sed -i "s/#SYSTEMPASSWORD = \"password\"/SYSTEMPASSWORD = \"oracle\"/g" /tmp/database/response/dbca.rsp

sed -i "s/#SYSMANPASSWORD = \"password\"/SYSMANPASSWORD = \"oracle\"/g" /tmp/database/response/dbca.rsp

sed -i "s/#DBSNMPPASSWORD = \"password\"/DBSNMPPASSWORD = \"oracle\"/g" /tmp/database/response/dbca.rsp

sed -i "s;#DATAFILEDESTINATION =;DATAFILEDESTINATION =/u01/app/oracle/oradata;g" /tmp/database/response/dbca.rsp

sed -i "s;#RECOVERYAREADESTINATION=;RECOVERYAREADESTINATION=/u01/app/oracle/fast_recovery_area;g" /tmp/database/response/dbca.rsp

sed -i "s;#CHARACTERSET = \"US7ASCII\";CHARACTERSET = \"ZHS16GBK\";g" /tmp/database/response/dbca.rsp

sed -i "s;#TOTALMEMORY = \"800\";TOTALMEMORY = \"1638\";g" /tmp/database/response/dbca.rsp

16.切換oracle進行靜默配置

su - oracle
/u01/app/oracle/product/11.2.0/bin/dbca -silent -responseFile /tmp/database/response/dbca.rsp   

export ORACLE_HOME_LISTNER=$ORACLE_HOME
cat >> ~/.bash_profile <<EOF
export ORACLE_HOME_LISTNER=\$ORACLE_HOME
EOF

17.查看監聽狀態

lsnrctl status
#啓動
lsnrctl start

18.設置開機啓動

#root用戶執行
su - 
sed -i 's#N#Y#g' /etc/oratab
#切換oracle用戶執行
su - oracle
vi $ORACLE_HOME/bin/dbstart
#將ORACLE_HOME_LISTNER=$1換成
ORACLE_HOME_LISTNER=$ORACLE_HOME

vi $ORACLE_HOME/bin/dbshut
#將ORACLE_HOME_LISTNER=$1換成
ORACLE_HOME_LISTNER=$ORACLE_HOME

#編寫腳本
> /etc/init.d/oracle

vim /etc/init.d/oracle

#!/bin/sh
#chkconfig: 2345 20 80
#description: Oracle dbstart / dbshut
#以上兩行爲chkconfig所需
ORA_HOME=/u01/app/oracle/product/11.2.0
ORA_OWNER=oracle
LOGFILE=/var/log/oracle.log
echo "#################################" >> ${LOGFILE}
date +"### %T %a %D: Run Oracle" >> ${LOGFILE}
if [ ! -f ${ORA_HOME}/bin/dbstart ] || [ ! -f ${ORA_HOME}/bin/dbshut ]; then
    echo "Error: Missing the script file ${ORA_HOME}/bin/dbstart or ${ORA_HOME}/bin/dbshut!" >> ${LOGFILE}
    echo "#################################" >> ${LOGFILE}
    exit
fi
start(){
    echo "###Startup Database..."
    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbstart ${ORA_HOME}"
    echo "###Done."
    echo "###Run database control..."
    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/emctl start dbconsole"
    echo "###Done."
}
stop(){
    echo "###Stop database control..."
    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/emctl stop dbconsole"
    echo "###Done."
    echo "###Shutdown Database..."
    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbshut ${ORA_HOME}"
    echo "###Done."
}
case "$1" in
    'start')
        start >> ${LOGFILE}
    ;;
    'stop')
        stop >> ${LOGFILE}
    ;;
    'restart')
        stop >> ${LOGFILE}
        start >> ${LOGFILE}
    ;;
esac
date +"### %T %a %D: Finished." >> ${LOGFILE}
echo "#################################" >> ${LOGFILE}
echo ""

#將 oracle 添加到 chkconfig中:
chkconfig --add oracle

#可使用如下命令查看和設置oracle服務的開機啓動級別:
chkconfig | grep oracle #查看oracle服務的開機啓動級別
chkconfig --level 24 oracle off #修改oracle服務的開機啓動級別
chkconfig --level 35 oracle on

#至此可使用如下命令對oracle的啓動或關閉進行管理
service oracle start #啓動
service oracle stop #關閉
service oracle restart #重啓

#建立連接:
ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle   #關機執行
ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle   #重啓執行

19.連接串配置

vm =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.76.157)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章