RHEL 7.6 安装 Oracle 18c RAC

 

第一部分 安装规划

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

虚拟环境

VirtualBox 6.0

OS 版本

Red Hat Enterprise Linux Server release 7.6 (Maipo)

数据库版本

18.3.0.0.0

安装介质

LINUX.X64_180000_db_home.zip

LINUX.X64_180000_grid_home.zip

软件安装目录

grid: /u01/app/18.0.0/grid

oracle: /u01/app/oracle/product/18.0.0/db_1

用户和组

grid: oinstall,asmadmin,asmdba,racdba,asmoper

oracle: oinstall, dba,asmdba,backupdba,dgdba,kmdba,racdba,oper

网络规划

192.168.56.11  rac1     #一节点public ip

192.168.56.12  rac2     #二节点public ip

 

192.168.56.13  rac1-vip  #一节点virtual ip

192.168.56.14  rac2-vip  #二节点virtual ip

 

172.16.56.11  rac1-priv  #一节点private ip

172.16.56.12  rac2-priv  #二节点private ip

 

192.168.56.15 rac-scan   # scan ip

ASM磁盘组

OCRVT: 2G * 3

MGMT: 40G * 1

DATA: 8G * 1

ARCH: 5G * 1

 

安装操作系统,添加ASM共享磁盘省略

 

第二分部 操作系统环境配置

 

2.1 更改IO调度为deadline,关闭numa和透明大页

 

 

(1).vi /etc/default/grub(编辑 /etc/default/grub 文件,在GRUB_CMDLINE_LINUX 条目后面添加"elevator=deadline","transparent_hugepage=never" 和”numa=off”,

执行grub2-mkconfig -o /boot/grub2/grub.cfg 最后重启操作系统)

 

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rootvg/root rd.lvm.lv=rootvg/swap rhgb quiet elevator=deadline transparent_hugepage=never numa=off net.ifnames=0 biosdevname=0"

 

grub2-mkconfig -o /boot/grub2/grub.cfg

 

(2). 重启操作系统使配置生效.

 

2.2 使用CTSS时钟同步

/sbin/service ntpd stop

chkconfig ntpd off

mv /etc/ntp.conf /etc/ntp.conf.org

 

systemctl stop chronyd

systemctl disable chronyd

 

2.3 配置/etc/hosts解析表

 

vi  /etc/hosts添加

#config for 18c RAC

 

192.168.56.11 rac1

192.168.56.12 rac2

 

192.168.56.13 rac1-vip

192.168.56.14 rac2-vip

 

172.16.56.11  rac1-priv

172.16.56.12  rac2-priv

 

192.168.56.15 rac-scan

 

2.4 关闭防火墙

systemctl disable firewalld.service

systemctl stop firewalld.service

 

2.5 关闭selinux

 

vi  /etc/selinux/config

 

SELINUX=disabled

 

2.6 关闭NetworkManager

 

systemctl disable NetworkManager

systemctl stop NetworkManager

 

2.7 停止avahi-daemon

systemctl stop avahi-daemon.socket avahi-daemon.service

systemctl disable avahi-daemon.socket avahi-daemon.service

 

2.8 配置NOZEROCONF

vi  /etc/sysconfig/network  添加

 

NOZEROCONF=yes

 

2.9 内核参数修改

vi /etc/sysctl.conf

 

#kernel configuration for oracle 18c

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 268435456

kernel.shmmax = 549755813760

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

 

是配置生效

 

sysctl -p

 

 

2.10 添加用户和组

/usr/sbin/groupadd -g 54321 oinstall

/usr/sbin/groupadd -g 54322 dba

/usr/sbin/groupadd -g 54323 oper

/usr/sbin/groupadd -g 54324 backupdba

/usr/sbin/groupadd -g 54325 dgdba

/usr/sbin/groupadd -g 54326 kmdba

/usr/sbin/groupadd -g 54327 asmdba

/usr/sbin/groupadd -g 54328 asmoper

/usr/sbin/groupadd -g 54329 asmadmin

/usr/sbin/groupadd -g 54330 racdba

 

/usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle

/usr/sbin/useradd -u 54322 -g oinstall -G asmadmin,asmdba,racdba,asmoper grid

 

echo oracle | passwd --stdin oracle

echo oracle | passwd --stdin grid

 

2.11 创建软件安装目录

mkdir -p /u01/app/18.0.0/grid

mkdir -p /u01/app/grid

mkdir -p /u01/app/oracle/product/18.0.0/db_1

chown -R grid:oinstall /u01

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

chmod -R 775 /u01/

 

2.12 用户环境变量配置

#为grid用户添加环境变量

vi  /home/grid/.bash_profile EOF

export ORACLE_BASE=/u01/app/grid

export ORACLE_SID=+ASM1 (节点2改为+ASM2)

export ORACLE_HOME=/u01/app/18.0.0/grid

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

EOF

source /home/grid/.bash_profile

 

#为oracle用户添加环境变量

vi  /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_SID=racdb1(节点2改为racdb2)

export ORACLE_HOME=$ORACLE_BASE/product/18.0.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

EOF

source /home/oracle/.bash_profile

2.13 配置用户资源限制

vi /etc/security/limits.conf 添加

 

oracle    soft    nproc   2047

oracle    hard    nproc   16384

oracle    soft    nofile  1024

oracle    hard    nofile  65536

oracle    soft    stack   10240

oracle    hard  memlock  3145728

oracle    soft  memlock  3145728

 

grid    soft    nproc   2047

grid    hard    nproc   16384

grid    soft    nofile  1024

grid    hard    nofile  65536

grid    soft    stack   10240

grid    hard  memlock  3145728

grid    soft  memlock  3145728

 

 

vi /etc/pam.d/login  添加

 

#this is for oracle user

session    required     pam_limits.so

 

2.14 配置全局profile 

vi  /etc/profile 添加

 

#this is for oracle user

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

 

2.15 安装rpm依赖包

yum -y install bc \

binutils \

compat-libcap1 \

compat-libstdc++-33.i686 \

compat-libstdc++-33.x86_64 \

glibc.i686 \

glibc.x86_64 \

glibc-devel.i686 \

glibc-devel.x86_64 \

ksh \

libaio.i686 \

libaio.x86_64 \

libaio-devel.i686 \

libaio-devel.x86_64 \

libX11.i686 \

libX11.x86_64 \

libXau.i686 \

libXau.x86_64 \

libXi.i686 \

libXi.x86_64 \

libXtst.i686 \

libXtst.x86_64 \

libXrender-devel.i686 \

libXrender-devel.x86_64 \

libXrender.i686 \

libXrender.x86_64 \

libgcc.i686 \

libgcc.x86_64 \

libstdc++.i686 \

libstdc++.x86_64 \

libstdc++-devel.i686 \

libstdc++-devel.x86_64 \

libxcb.i686 \

libxcb.x86_64 \

make \

nfs-utils.x86_64 \

net-tools \

python \

python-configshell \

python-rtslib \

python-six \

smartmontools \

sysstat \

targetcli \

unixODBC \

unixODBC-devel \

unzip

 

 

 

CVUQDISK_GRP=oinstall; export CVUQDISK_GRP

rpm -iv /u01/app/18.0.0/grid/cvuqdisk-1.0.10-1.rpm   (需先解压grid安装包到/u01/app/18.0.0/grid)

 

 

2.16 共享存储配置

 

(1).多路径方式安装配置

 

yum -y install device-mapper*

 

 

--生成默认配置文件

 

mpathconf --enable

 

vi /etc/multipath.conf 修改

 

find_multipaths no

 

multipaths {

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754171

               alias                   OCR1

       }

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754172

               alias                   OCR2

       }

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754173

               alias                   OCR3

       } 

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754174

               alias                   MGMT

       }                  

       multipath {

               wwid                    14f504e46494c4552325354736c632d783567742d47557662

               alias                   DATA

       }

              multipath {

               wwid                    14f504e46494c45526a62644c70392d65744b562d38524967

               alias                   ARCH

       }

}

 

multipath -F

 

systemctl restart multipathd.service

multipath -v3

 

vi  /etc/udev/rules.d/99-oracle-asmdevices.rules

 

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754171",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754172",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754173",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754174",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c4552325354736c632d783567742d47557662",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c45526a62644c70392d65744b562d38524967",OWNER="grid",GROUP="asmadmin",MODE="0660"

 

udevadm trigger

udevadm control -R

systemctl restart systemd-udevd.service

 

 

(2).不使用多路径的方式,仅需配置如下文件(本次安装是测试环境,磁盘没有多条路径,无需使用多路径方式)

 

vi  /etc/udev/rules.d/99-oracle-asmdevices.rules

 

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB5643659c-65a9d79a",SYMLINK+="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB603d9ec9-7c3a2db0",SYMLINK+="asm-diskc",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBc74f578a-aa1a566c",SYMLINK+="asm-diskd",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBcje8jg2a-ff4e14d3",SYMLINK+="asm-diske",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBcaeggcdb-3gv5hnc6",SYMLINK+="asm-diskf",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBccbd112b-egdgrkr5",SYMLINK+="asm-diskg",OWNER="grid",GROUP="asmadmin",MODE="0660"

 

#使udev策略配置生效

 

udevadm trigger

udevadm control -R

systemctl restart systemd-udevd.service

 

 

[root@rac1 ~]# ll /dev/asm*

lrwxrwxrwx 1 root root       3 Mar 25 14:53 /dev/asm-diskb -> sdb

lrwxrwxrwx 1 root root       3 Mar 25 14:53 /dev/asm-diskc -> sdc

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diskd -> sdd

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diske -> sde

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diskf -> sdf

 

[root@rac1 ~]# ll /dev/sd*

brw-rw---- 1 grid asmadmin 8, 16 Mar 25 15:07 /dev/sdb

brw-rw---- 1 grid asmadmin 8, 32 Mar 25 15:07 /dev/sdc

brw-rw---- 1 grid asmadmin 8, 48 Mar 25 15:07 /dev/sdd

brw-rw---- 1 grid asmadmin 8, 64 Mar 25 15:07 /dev/sde

brw-rw---- 1 grid asmadmin 8, 80 Mar 25 15:07 /dev/sdf

 

 

 

第三部分 安装GRID软件

 

3.1 解压软件

 

unzip LINUX.X64_180000_grid_home.zip -d /u01/app/18.0.0/grid

 

3.2 配置用户ssh对等性(方便检查rac2节点配置,也可以OUI界面配置)

su - grid

cd /u01/app/18.0.0/grid/oui/prov/resources/scripts

./sshUserSetup.sh -user grid -hosts "rac1 rac2" -advanced –noPromptPassphrase

 

3.3 安装前环境预检查

su - grid

cd /u01/app/18.0.0/grid

./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup –verbose

 

3.4 开始安装grid软件

export DISPLAY=192.168.56.1:0.0

cd /u01/app/18.0.0/grid

./gridSetup.sh

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第1张

RHEL 7.6 安装 Oracle 18c RAC Oracle 第2张

RHEL 7.6 安装 Oracle 18c RAC Oracle 第3张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第4张

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第5张

RHEL 7.6 安装 Oracle 18c RAC Oracle 第6张

 

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第7张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第8张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第9张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第10张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第11张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第12张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第13张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第14张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第15张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第16张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第17张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第18张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第19张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第20张

 

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第21张

分别在rac1,rac2执行上面2个脚本

RHEL 7.6 安装 Oracle 18c RAC Oracle 第22张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第23张

 

执行完成后,点击OK继续完成安装。

RHEL 7.6 安装 Oracle 18c RAC Oracle 第24张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第25张

 

INS-20802 报错可以忽略

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第26张

 

至此grid软件安装完成。

 

 

第四部分 创建ASM磁盘组

 

su - grid

export DISPLAY=192.168.56.1:0.0

asmca

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第27张

创建DATA和ARCH磁盘组

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第28张

 

 

 

 

第五部分 安装database软件

 

5.1 解压db软件

 

su - oracle

unzip /soft/LINUX.X64_180000_db_home.zip –d /u01/app/oracle/product/18.0.0/db_1

 

5.2 开始安装db软件

su - oracle

export DISPLAY=192.168.56.1:0.0

cd /u01/app/oracle/product/18.0.0/db_1

./runInstaller

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第29张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第30张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第31张

 如果前面没有配置oracle用户的ssh对等性,则输入oracle用户密码,点击setup进行配置

RHEL 7.6 安装 Oracle 18c RAC Oracle 第32张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第33张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第34张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第35张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第36张

 

 

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第37张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第38张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第39张

 

分别在rac1,rac2节点执行/u01/app/oracle/product/18.0.0/db_1/root.sh脚本

 

 RHEL 7.6 安装 Oracle 18c RAC Oracle 第40张

至此database软件安装完成。

 

 

第六部分 创建数据库

su - oracle

export DISPLAY=192.168.56.1:0.0

dbca

RHEL 7.6 安装 Oracle 18c RAC Oracle 第41张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第42张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第43张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第44张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第45张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第46张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第47张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第48张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第49张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第50张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第51张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第52张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第53张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第54张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第55张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第56张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第57张

 

RHEL 7.6 安装 Oracle 18c RAC Oracle 第58张

 

至此dbca创建数据库完成。

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄