Oracle RAC 11R2 on Linux 脚本



前提:本机挂载介质镜像,并配置好仓库

适用范围:适应于所有linux版本;

使用说明:在所有服务器节点新建install.sh,并将以下内容copy进去,并赋予执行权限

注意事项:此本脚本运行后,重启服务器

############脚本开始##############
#!/bin/bash
function install_rpm()
{
echo -e "\n------------------------------------------------------------------------------------"
 for i in  binutils*  gcc*  gblic*  libgcc*  libstdc*  libaio*  make-*  sysstat*  readline* compat*  ksh*
do
echo "yum -y install $i"
yum -y install $i 2>&1 1>/dev/null
done
}

 
function stop_firewall()
{
echo -e "\n-----------------------------------------"
echo "chkconfig iptables off"
chkconfig iptables off
}

 
function add_user()
{
echo -e "\n Now,It's begin to add user and profiles and modes-----------"
echo "groupadd oinstall"
groupadd -g 1000 oinstall
 
echo "groupadd dba"
groupadd -g 1300 dba
 
echo "groupadd oper"
groupadd -g 1301 oper


echo "groupadd asmadmin"
groupadd -g 1200 asmadmin

echo "groupadd asmdba"
groupadd -g 1201 asmdba

echo "groupadd oper"
groupadd -g 1202 asmoper


echo "useradd -m -g oinstall -G dba,oper grid"
useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -s /bin/bash grid  

echo "useradd -m -g oinstall -G dba,oper oracle"
useradd -m -u 1101 -g oinstall -G dba,oper,asmdba -s /bin/bash oracle
 
mkdir -p  /u01/app/11.2.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
chown grid:oinstall /u01/app/11.2.0/grid
chown grid:oinstall /u01/app/grid
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/
chown -R grid:oinstall /u01
}

function add_parameter(){

echo "add  kerenl things into /etc/sysctl.conf"

cat  >>/etc/sysctl.conf  <<EOL
kernel.shmmax = 68719476736

fs.aio-max-nr = 1048576 

fs.file-max = 6815744 

kernel.shmall = 2097152  

kernel.shmmax = 1054472192 

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

net.ipv4.tcp_wmem = 262144 262144 262144 

net.ipv4.tcp_rmem = 4194304 4194304 4194304
EOL

cat >> /etc/security/limits.conf  <<EOL
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOL


cat >>  /etc/pam.d/login<<EOL
session required /lib/security/pam_limits.so
session required pam_limits.so
EOL

cat >> /home/oracle/.bash_profile<<EOL

export TMP=/tmp


export ORACLE_SID=RAC1  # RAC1

#export ORACLE_SID=RAC2  # RAC2

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

export TNS_ADMIN=/u01/app/oracle/product/11.2.0/db_1/network/admin

export PATH=/u01/app/oracle/product/11.2.0/db_1/bin:$PATH

export LD_LIBRARY_PATH=/u01/app/oracle/product/11.2.0/db_1/lib:/lib:/usr/lib

export CLASSPATH=/u01/app/oracle/product/11.2.0/db_1/JRE:/u01/app/oracle/product/11.2.0/db_1/jlib:/u01/app/oracle/product/11.2.0/db_1/rdbms/jlib

umask 022


EOL

cat >> /home/grid/.bash_profile<<EOL
export TMP=/tmp

export ORACLE_SID=+ASM1  # RAC1

#export ORACLE_SID=+ASM2  # RAC2

export ORACLE_BASE=/u01/app/grid

export ORACLE_HOME=/u01/app/11.2.0/grid

export PATH=/u01/app/grid/bin:/u01/app/11.2.0/grid/bin:$PATH

export LD_LIBRARY_PATH=/u01/app/11.2.0/grid/lib:/lib:/usr/lib

export CLASSPATH=/u01/app/11.2.0/grid/JRE:/u01/app/11.2.0/grid/jlib:/u01/app/11.2.0/grid/rdbms/jlib

umask 022


EOL


}
 

function main()
{
add_user
stop_firewall
install_rpm
add_parameter
}
main

注意:grid profile中不能配置TNS_HOME,因为11goracle监听统一由grid管理,如果设置此值,将导致grid管理oracle监听出现异常!



你可能感兴趣的:(监听,grid,11grac脚本)