操作系统安装
链接:https://pan.baidu.com/s/1nDwK2PNAO6F310fKMWUaLA
提取码:lfok
rac环境搭建.docx
1、root用户,rac1、rac2关闭防火墙
停止firewall
systemctl stop firewalld.service
禁止firewall开机启动
systemctl disable firewalld.service
查看防火墙状态
firewall-cmd --state
关闭selinux
vi /etc/selinux/config将SELINUX=enforcing改为SELINUX=disabled
2、root用户,rac1、rac2 修改hosts文件
vi /etc/hosts
#public ip
192.168.0.95 rac1
192.168.0.97 rac2
#priv ip
10.10.0.95 rac1-prv
10.10.0.97 rac2-prv
#vip ip
192.168.0.96 rac1-vip
192.168.0.98 rac2-vip
#scan ip
192.168.0.102 rac-scan
#iscsi
192.168.0.91 iscsi
3、root用户,rac1、rac2 安装依赖包
yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 gcc gcc-c++ glibc
yum install -y glibc.i686 glibc-devel glibc-devel.i686 ksh libgcc libgcc.i686 libstdc++ libstdc++.i686
yum install -y libstdc++-devel libstdc++-devel.i686 libaio libaio.i686 libaio-devel libaio-devel.i686 libXext
yum install -y libXext.i686 libXtst libXtst.i686 libX11 libX11.i686 libXau libXau.i686 libxcb libxcb.i686 libXi
yum install -y libXi.i686 make sysstat unixODBC unixODBC-devel readline libtermcap-devel pdksh
yum install -y smartmontools net-tools lrzsz unzip xdpyinfo compat-libstdc++ iscsi-initiator-utils nfs-utils
4、root用户,rac1、rac2 创建用户及用户组groupadd -g 501 oinstallgroupadd -g 502 dbagroupadd -g 503 opergroupadd -g 504 asmadmingroupadd -g 505 asmopergroupadd -g 506 asmdbauseradd -g oinstall -G dba,asmdba,oper oracleuseradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
设置grid、oracle密码passwd gridpasswd oracle
5、root用户,rac1、rac2 创建文件目录mkdir -p /u01/app/gridmkdir -p /u01/app/grid/softmkdir -p /u01/app/12.2.01/gridchown -R grid:oinstall /u01mkdir -p /u01/app/oraInventorychown -R grid:oinstall /u01/app/oraInventorymkdir -p /u01/app/oraclemkdir -p /u01/app/oracle/softchown -R oracle:oinstall /u01/app/oraclechmod -R 775 /u01
6、root用户,rac1、rac2 修改20-nproc.confvi /etc/security/limits.d/20-nproc.conf# Change this#注释这行* soft nproc 1024# To this增加下面一行* - nproc 16384
7、root用户,rac1、rac2 修改limits.confvi /etc/security/limits.conf#ORACLE SETTINGgrid soft nproc 2047grid hard nproc 16384grid soft nofile 1024grid hard nofile 65536grid soft stack 10240grid hard stack 32768oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536oracle soft stack 10240oracle hard stack 32768
8、root用户,rac1、rac2 修改loginvi /etc/pam.d/login#ORACLE SETTINGsession required pam_limits.so
9、root用户,rac1、rac2 修改/etc/systemd/logind.conf文件
vi /etc/systemd/logind.conf
RemoveIPC=no
重新reload
systemctl daemon-reload
10、root用户,rac1、rac2 修改sysctl.confvi /etc/sysctl.conf#ORACLE SETTINGfs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmmax = 61847529062 #物理内存*1024*1024*1024*0.9kernel.shmall = 15099494 #shmmax/1024/4kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048586
11、root用户,rac1、rac2 添加NOZEROCONF=yes参数vi /etc/sysconfig/networkNOZEROCONF=yes
12、
root用户,rac1、rac2 重启
reboot
13、grid用户,rac1 配置环境变量
su - grid
vi ~/.bash_profile
export PS1="[`whoami`@`hostname`:"'$PWD]$'
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_HOSTNAME=rac1
export ORACLE_SID=+ASM1
export ORACLE_TERM=xterm
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/12.2.01/grid
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export THREADS_FLAG=native
export DISPLAY=192.168.0.99:0.0
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
14、grid用户,rac2 配置环境变量
su - grid
vi ~/.bash_profile
export PS1="[`whoami`@`hostname`:"'$PWD]$'
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_HOSTNAME=rac2
export ORACLE_SID=+ASM2
export ORACLE_TERM=xterm
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/12.2.01/grid
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export THREADS_FLAG=native
export DISPLAY=192.168.0.99:0.0
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
15、oracle用户,rac1 配置环境变量
su - oracle
vi ~/.bash_profile
export PS1="[`whoami`@`hostname`:"'$PWD]$'
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_HOSTNAME=rac1
export ORACLE_UNQNAME=rac1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.01/db_1
export ORACLE_SID=rac1
export ORACLE_TERM=xterm
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=.:$PATH:$HOME/bin:$ORACLE_BASE/product/12.2.01/db_1/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export THREADS_FLAG=native
export DISPLAY=192.168.0.99:0.0
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
16、oracle用户,rac2 配置环境变量
su - oracle
vi ~/.bash_profile
export PS1="[`whoami`@`hostname`:"'$PWD]$'
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_HOSTNAME=rac2
export ORACLE_UNQNAME=rac2
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.01/db_1
export ORACLE_SID=rac2
export ORACLE_TERM=xterm
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=.:$PATH:$HOME/bin:$ORACLE_BASE/product/12.2.01/db_1/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export THREADS_FLAG=native
export DISPLAY=192.168.0.99:0.0
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
17、root用户,rac1,rac2 配置环境变量
su - root
vi ~/.bash_profile
PATH=$PATH:/u01/app/12.2.01/grid/bin:$HOME/bin
export PATH
18、root用户,rac1,rac2 安装cvuqdisk-1.0.10-1
cd /usr/local/src
上传文件包
rz
安装export CVUQDISK_GRP=oinstallrpm -ivh cvuqdisk-1.0.10-1.rpm
19 、 root 、 grid 、 oracle 用户, rac1 配置免密互信 su -root
ssh-keygen
ssh-copy-id root@rac2
su - grid
ssh-keygen
ssh-copy-id grid@rac2
su - oracle
ssh-keygen
ssh-copy-id oracle@rac2
20 、 root 、 grid 、 oracle 用户, rac2 配置免密互信 su -root
ssh-keygen
ssh-copy-id root@rac1
su - grid
ssh-keygen
ssh-copy-id grid@rac1
su - oracle
ssh-keygen
ssh-copy-id oracle@rac1 21、root用户,rac1,rac2 配置共享磁盘
扫描
iscsiadm -m discovery -t sendtargets -p iscsi
配置手动登录
iscsiadm -m node -T iqn.2006-01.com.openfiler:rac.ocr -p iscsi -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:rac.fra -p iscsi -l
iscsiadm -m node -T iqn.2006-01.com.openfiler:rac.data -p iscsi -l
检查磁盘
fdisk -l |grep /dev
重建
dd if=/dev/zero of=/dev/sdb bs=1024 count=2056
dd if=/dev/zero of=/dev/sdc bs=1024 count=2056
dd if=/dev/zero of=/dev/sdd bs=1024 count=2056
dd if=/dev/zero of=/dev/sde bs=1024 count=2056
dd if=/dev/zero of=/dev/sdf bs=1024 count=2056 查找WWID for i in `cat /proc/partitions | awk {'print $4'} |grep sd`; do echo "### $i: `/lib/udev/scsi_id --whitelist --replace-whitespace /dev/$i`"; done 绑定磁盘 vi /etc/udev/rules.d/55-openiscsi.rules #/etc/udev/rules.d/55-openiscsi.rules KERNEL=="sd*",BUS=="scsi", PROGRAM="/etc/udev/scripts/iscsidev.sh %b", SYMLINK+="iscsi/%c/part%n",OWNER="grid",GROUP="oinstall",MODE="0660" ~ mkdir -p /etc/udev/scripts vi /etc/udev/scripts/iscsidev.sh #!/bin/sh # FILE:/etc/udev/scripts/iscsidev.sh BUS=${1} HOST=${BUS%%:*} [ -e/sys/class/iscsi_host ] || exit 1 file="/sys/class/iscsi_host/host${HOST}/device/session*/iscsi_session*/ targetname" target_name=$(cat${file}) # This is not anopen-scsi drive if [ -z"${target_name}" ]; then exit 1 fi # Check if QNAPdrive check_qnap_target_name=${target_name%%:*} if [ $check_qnap_target_name= "iqn.2006-01.com.openfiler" ]; then target_name=`echo"${target_name%.*}"` fi echo"${target_name##*.}" 授权 chmod 775 /etc/udev/scripts/iscsidev.sh 重启 reboot 22、grid用户,rac1安装grid上传文件su - grid
[grid@rac1:/u01]$cd /u01/app/grid/soft
[grid@rac1:/u01/soft]$rz
linuxx64_12201_grid_home解压文件unzip linuxx64_12201_grid_home.zip
删除压缩包节约空间[grid@rac1:/u01/soft]$rm -rf linuxx64_12201_grid_home.zip验证./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup -verbose如果报PRVE-0421 : No entry exists in /etc/fstab for mounting /dev/shm可忽略掉
进行安装./gridSetup.sh
如果磁盘状态为Member的话,执行重建dd if=/dev/zero of=/dev/sdb bs=1024 count=2056
23、
grid用户,rac1查看集群状态cd /u01/soft/grid/bin./crs_stat -tName Type Target State Host ------------------------------------------------------------ora....SM.lsnr ora....er.type ONLINE ONLINE rac1 ora.CRS.dg ora....up.type ONLINE ONLINE rac1 ora....ER.lsnr ora....er.type ONLINE ONLINE rac1 ora....AF.lsnr ora....er.type OFFLINE OFFLINE ora....N1.lsnr ora....er.type ONLINE ONLINE rac1 ora.MGMTLSNR ora....nr.type ONLINE ONLINE rac1 ora.asm ora.asm.type ONLINE ONLINE rac1 ora.chad ora.chad.type ONLINE ONLINE rac1 ora.cvu ora.cvu.type ONLINE ONLINE rac1 ora.mgmtdb ora....db.type ONLINE ONLINE rac1 ora....network ora....rk.type ONLINE ONLINE rac1 ora.ons ora.ons.type ONLINE ONLINE rac1 ora.qosmserver ora....er.type ONLINE ONLINE rac1 ora....C1.lsnr application ONLINE ONLINE rac1 ora.rac1.ons application ONLINE ONLINE rac1 ora.rac1.vip ora....t1.type ONLINE ONLINE rac1 ora....C2.lsnr application ONLINE ONLINE rac2 ora.rac2.ons application ONLINE ONLINE rac2 ora.rac2.vip ora....t1.type ONLINE ONLINE rac2 ora.scan1.vip ora....ip.type ONLINE ONLINE rac1
24、grid用户、rac1创建磁盘组
asmca
创建DATA和FRA磁盘组
24、oracle
用户,rac1安装Oracle数据库软件mkdir -p /u01/app/soft/cd /u01/app/soft/rzlinuxx64_12201_database.zipunzip linuxx64_12201_database.ziprm -rf linuxx64_12201_database.zipcd database/./runInstaller
重建完成的图忘记截了(直接点完成就好了)
25、
oracle
用户,rac1安装数据库dbca
数据库安装完毕执行验证
