oracle 19c rac 安装手册

oracle 19c rac 安装手册

官方文档:https://docs.oracle.com/en/database/oracle/oracle-database/19/index.html

一、集群规划

再部署集群之前,需要对网络和存储两个方面进行规划。下面简述了网络和存储两个方面需要注意的地方。

  • Oracle RAC 数据库私有网络通信必须使用单独的交换机,不可以通过网线直连。

  • 节点间通信网络建议使用10GE(万兆)网络。

  • 必须对public和private网卡网络进行网卡绑定操作,采用mod=4 即:(802.3ad) IEEE 802.3adDynamic link aggregation(IEEE 802.3ad 动态链接聚合)。 交换机对应的端口需要配置802.3ad模式。

  • 多路径软件采用multipath+udev的方式进行管理。

1.1 服务器规划

集群角色 主机名 OS Public IP Virtual IP Private IP Scan IP 实例名 Grid/Oracle版本
rac01 rac01 Oracle Linux Server 7.6 192.168.10.111 192.168.10.115 192.168.20.111 192.168.10.119 orcl1 19.3.0至19.11.0
rac02 rac02 Oracle Linux Server 7.6 192.168.10.113 192.168.10.117 192.168.20.113 192.168.10.119 orcl1 19.3.0至19.11.0

1.2 存储规划

因oracle 19c grid中自带了一个管理库,在安装时可以选择安装也可以选择不安装,如果要安装的话需要的OCR磁盘组容量要求比较高。至少配置30Gx3,作为OCR磁盘组,否则容易导致安装失败。

磁盘功能 个数 每个大小(GB) 冗余方式
OCR+VOTING+(19C Grid管理库) 3 30 NORMAL
DATA 2 20 EXTERNAL

二、基础环境要求与配置

以下所有配置中,(rac01&rac02)代表在两个节点执行,(rac01)代表仅需在某一个节点执行。

2.1 操作系统要求

根据oracle官方文档,安装oracle19c的操作系统要求如下:

Linux x86-64操作系统要求:

- Oracle Linux 8.1 with the Unbreakable Enterprise Kernel 6: 5.4.17-2011.0.7.el8uek.x86_64 or later
  Oracle Linux 8 with the Red Hat Compatible kernel: 4.18.0-80.el8.x86_64 or later
- Oracle Linux 7.4 with the Unbreakable Enterprise Kernel 4: 4.1.12-124.19.2.el7uek.x86_64 or later
  Oracle Linux 7.4 with the Unbreakable Enterprise Kernel 5: 4.14.35-1818.1.6.el7uek.x86_64 or later
  Oracle Linux 7.7 with the Unbreakable Enterprise Kernel 6: 5.4.17-2011.4.4.el7uek.x86_64 or later
  Oracle Linux 7.5 with the Red Hat Compatible Kernel: 3.10.0-862.11.6.el7.x86_64 or later
- Red Hat Enterprise Linux 8: 4.18.0-80.el8.x86_64 or later
- Red Hat Enterprise Linux 7.5: 3.10.0-862.11.6.el7.x86_64 or later
- SUSE Linux Enterprise Server 15: 4.12.14-23-default or later
- SUSE Linux Enterprise Server 12 SP3: 4.4.162-94.72-default or later

IBM: Linux on System z操作系统需求:

- Red Hat Enterprise Linux 8.3: 4.18.0-240.el8.s390x or later
- Red Hat Enterprise Linux 7.4: 3.10.0-693.el7.s390x or later
- SUSE Linux Enterprise Server 15: 5.3.18-57-default s390x or later
- SUSE Linux Enterprise Server 12: 4.4.73-5-default s390x or later

2.2 网卡

根据oracle rac原理,安装rac需要两张网卡,并且网卡需要对应使用,IP地址为静态IP。

2.2.1 禁用自动命名网卡(rac01&rac02)

1.首先修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-ens33文件,将ifcfg-ens33里的DEVICE和NAME项改为eth0

2.然后将该配置的文件名改成ifcfg-eth0

3.禁用该可预测命名规则。对于这一点,你可以在启动时传递“net.ifnames=0 biosdevname=0 ”的内核参数。这是通过编辑/etc/default/grub在变量GRUB_CMDLINE_LINUX后面加入“net.ifnames=0 biosdevname=0”来实现的,参数间以空格来间隔。

4.运行命令grub2-mkconfig -o /boot/grub2/grub.cfg 来重新生成GRUB配置并更新内核参数,重启。

[root@rac01 network-scripts]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap net.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

#重新生成GRUB配置并更新内核参数
[root@rac01 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.14.35-1818.3.3.el7uek.x86_64
Found initrd image: /boot/initramfs-4.14.35-1818.3.3.el7uek.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-506ed14f59eb41c89599dc75decbb045
Found initrd image: /boot/initramfs-0-rescue-506ed14f59eb41c89599dc75decbb045.img
done
#重启服务器
[root@rac1 ~]# reboot

以上示例为rac01服务器上进行的操作,请在rac02服务器上进行同样操作。

2.2.2 网卡改为静态ip(rac01&rac02)

因oracle数据库对ip地址要求比较严格,只能采用静态IP。以下为设置静态IP的方法。

#修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0文件
BOOTPROTO=static #启用静态IP地址
IPADDR=192.168.10.111 #设置IP地址
NETMASK=255.255.255.0 #设置子网掩码
GATEWAY=192.168.10.2 #设置网关
ONBOOT="yes" #设置网卡自启动
#重启网络
[root@rac01 network-scripts]# service network restart 

以上示例为rac01服务器上进行的操作,请在rac02服务器上进行同样操作。

2.2.3 私网网卡配置MTU(rac01&rac02)

注意:私网网卡需要配置MTU

同步更新网卡配置文件,增加一行MTU=9000,确保重启网卡/主机后,mtu=9000不变:

vi /etc/sysconfig/network-scripts/ifcfg-eth1

MTU=“9000”

2.3 设置主机名(rac01&rac02)

  • rac01
hostnamectl set-hostname rac01
  • rca02
hostnamectl set-hostname rac02

2.4 禁用Transparent HugePages(rac01&rac02)

oracle官方要求禁用Transparent HugePages,但有书籍提出8G内存以上建议启用,在此还是建议先按照官方要求进行操作。编辑/etc/default/grub在变量GRUB_CMDLINE_LINUX后面加入“transparent_hugepage=never”来实现。

[root@rac01 network-scripts]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap net.ifnames=0 biosdevname=0 transparent_hugepage=never rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

#重新生成GRUB配置并更新内核参数
[root@rac01 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.14.35-1818.3.3.el7uek.x86_64
Found initrd image: /boot/initramfs-4.14.35-1818.3.3.el7uek.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-506ed14f59eb41c89599dc75decbb045
Found initrd image: /boot/initramfs-0-rescue-506ed14f59eb41c89599dc75decbb045.img
done
#重启服务器
[root@rac1 ~]# reboot

重启后查看状态如下:

[root@rac01 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
[root@rac01 ~]# grep AnonHugePages /proc/meminfo
AnonHugePages:         0 kB

以上示例为rac01服务器上进行的操作,请在rac02服务器上进行同样操作。

2.5 关闭selinux和防火墙(rac01&rac02)

  • selinux
sed -i 's/^ *SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 
  • 防火墙
systemctl disable firewalld
systemctl stop firewalld

2.6 配置yum本地源(rac01&rac02)

如果服务器可以访问互联网,可以不配置yum本地源,使用操作系统自带的yum配置。如果不能访问互联网或者不存在可用yum,则需要进行配置。具体配置方法如下:

#上传操作系统镜像文件至服务器某个目录,以/root/目录为例
mount -o loop -t iso9660 OracleLinux-Release7-Update6-x86_64-dvd.iso /media
#配置yum源
vi /etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///media
gpgcheck=0
enabled=1
#清理缓存
yum clean all

2.7 配置hosts(rac01&rac02)

在2个节点上配置hosts文件,以节点1为例:

[root@rac1 ~]# vim /etc/hosts
# 在文件的最后面加上
# public
192.168.10.111 rac01
192.168.10.113 rac02
#virtual
192.168.10.115 rac01-vip
192.168.10.117 rac02-vip
#private
192.168.20.111 rac01-priv
192.168.20.113 rac02-priv
#scan
192.168.10.119 rac-cluster-scan
配置完成后,重启网卡
[root@rac1 ~]# systemctl restart network

以上示例为rac01服务器上进行的操作,请在rac02服务器上进行同样操作。

2.8 NTP时钟同步(rac01&rac02)

条件允许的情况下配置ntpd自动时钟同步,如果没有可用时钟同步服务器,可以尝试将两台服务器中的一台作为时间服务器,对另外一台服务器提供时钟同步服务。总之目的是保持两台服务器时钟同步。

yum install -y ntp ntpdate
systemctl enable ntpd --now

2.9 avahi-daemon 配置(rac01&rac02)

avahi-daemon会影响集群间的心跳网络,建议关闭(如果没有安装,也装上后关闭,避免后面不小心安装导致问题)。

yum install -y avahi*
systemctl stop avahi-daemon.socket
systemctl stop avahi-daemon.service
pgrep -f avahi-daemon | awk '{print "kill -9 "$2}'
##配置NOZEROCONF=yes
cat <<EOF>>/etc/sysconfig/network
NOZEROCONF=yes
EOF

2.10 安装基本依赖包(rac01&rac02)

yum groupinstall -y "Server with GUI"

yum install -y bc binutils compat-libcap1 

你可能感兴趣的:(oracle,oracle,数据库)