RAC19C安装-03-数据库环境配置

1、设置/etc/hosts

cat >> /etc/hosts << EOF
#public ip
192.168.30.101 rac1
192.168.30.102 rac2

#private ip
192.168.20.1 rac1-priv
192.168.20.2 rac2-priv

#vip ip
192.168.30.103 rac1-vip
192.168.30.104 rac2-vip

#scan ip
192.168.30.105 rac-scan
EOF

2、创建用户和用户组

groupadd -g 10001 oinstall
groupadd -g 10002 dba
groupadd -g 10003 oper
groupadd -g 10004 asmadmin
groupadd -g 1005 asmoper
groupadd -g 1006 asmdba
useradd -g oinstall -G dba,asmdba,oper oracle
useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
echo 'Passw0rd123!' | passwd --stdin grid
echo 'Passw0rd123!' | passwd --stdin oracle

3、创建目录

#格式化磁盘,增加磁盘挂载安装目录
fdisk /dev/sdb
mkfs.xfs /dev/sdb1
mount /dev/sdb1 /u01

#查看磁盘UUID并持久化挂载
blkid /dev/sdb1
echo 'UUID=08fd614f-7cfd-49ae-a376-fb589b9147f7 /u01 xfs defaults 0 0' >> /etc/fstab

#11g建立目录
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/grid
chown -R grid:oinstall /u01
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/

#19c建立目录
mkdir -p /u01/app/19.3.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle/product/19.3.0/db_1
chown -R grid:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/

4、关闭防火墙

#关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
sed -i  "s/SELINUX=enforcing/SELINUX=disabled/"  /etc/selinux/config    #关闭selinux

5、关闭时钟同步及关闭avahi-daemon

systemctl stop chronyd
systemctl disable chronyd

移除chrony配置文件:(必须移除,否则校验NTP失败)
mv /etc/chrony.conf /etc/chrony.conf.bak


systemctl stop avahi-daemon
systemctl disable avahi-daemon

6、设置oracle环境变量(rac1、rac2)

#rac1
cat >> /home/oracle/.bash_profile << EOF
ORACLE_SID=orcl1;export ORACLE_SID
ORACLE_UNQNAME=orcl;export ORACLE_UNQNAME
JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db_1; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM
NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS"; export NLS_DATE_FORMAT
NLS_LANG=american_america.ZHS16GBK; export NLS_LANG
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11
PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
THREADS_FLAG=native; export THREADS_FLAG
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
EOF

#rac2
cat >> /home/oracle/.bash_profile << EOF
ORACLE_SID=orcl2;export ORACLE_SID
ORACLE_UNQNAME=orcl;export ORACLE_UNQNAME
JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db_1; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM
NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS"; export NLS_DATE_FORMAT
NLS_LANG=american_america.ZHS16GBK; export NLS_LANG
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11
PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
THREADS_FLAG=native; export THREADS_FLAG
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
EOF

7、设置grid环境变量(rac1、rac2)

#rac1配置
cat >> /home/grid/.bash_profile << EOF
PATH=$PATH:$HOME/bin
export ORACLE_SID=+ASM1 
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19.3.0/grid
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
export PATH
EOF

#rac2配置
cat >> /home/grid/.bash_profile << EOF
PATH=$PATH:$HOME/bin
export ORACLE_SID=+ASM2
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/19.3.0/grid
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
export PATH
EOF

8、修改资源配置(rac1、rac2)

cat >> /etc/security/limits.conf <<EOF
grid  soft  nproc  2047
grid  hard  nproc  16384
grid  soft  nofile  1024
grid  hard  nofile  65536
grid  soft  stack  10240
grid  hard  stack  32768
oracle  soft  nproc  2047
oracle  hard  nproc  16384
oracle  soft  nofile  1024
oracle  hard  nofile  65536
oracle  soft  stack  10240
oracle  hard  stack  32768
oracle soft memlock 3145728
oracle hard memlock 3145728
EOF

9、设置 PAM和NOZEROCONF

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

echo "NOZEROCONF=yes"  >>/etc/sysconfig/network

10、修改内核参数

cat >> /etc/sysctl.d/sysctl.conf <<EOF 
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
EOF
sysctl -p

11、挂载本地光驱、安装对应的包

yum install -y bc yum install -y compat-libcap1* yum install -y compat-libcap* yum install -y binutils yum install -y compat-libstdc++-33 yum install -y elfutils-libelf yum install -y elfutils-libelf-devel yum install -y gcc yum install -y gcc-c++ yum install -y glibc-2.5 yum install -y glibc-common yum install -y glibc-devel yum install -y glibc-headers yum install -y ksh libaio yum install -y libaio-devel yum install -y libgcc yum install -y libstdc++ yum install -y libstdc++-devel yum install -y make yum install -y sysstat yum install -y unixODBC yum install -y unixODBC-devel yum install -y binutils* yum install -y compat-libstdc* yum install -y elfutils-libelf* yum install -y gcc* yum install -y glibc* yum install -y ksh* yum install -y libaio* yum install -y libgcc* yum install -y libstdc* yum install -y make* yum install -y sysstat* yum install -y libXp* yum install -y glibc-kernheaders yum install -y net-tools-*

yum -y install bind-utils nfs-utils psmisc smartmontools unzip xorg-x11-utils xorg-x11-xauth

12、停用NTP,否则安装grid会报错

systemctl stop ntpd
mv /etc/ntp.conf /etc/ntp.conf.bak

13、安装tigervnc,实现远程桌面,可选

yum install tigervnc tigervnc-server
vncpasswd 

14、配置互信机制grid、oracle、root

ssh-keygen
ssh-copy-id rac1