CentOS或RHEL7下图形化界面安装Oracle 11gR2 RAC

0    285    1

Tags:

👉 本文共约7037个字,系统预计阅读时间或需27分钟。

1、环境规划

以下环境在VMware Workstation 15 Pro 下验证实验

\1. 主机环境规划:

设置项版本
操作系统CentOS Linux release 7.7.1908 (Core)
GRID 版本GI 11.2.0.4
数据库版本Oracle EE 11.2.0.4
db_namexkdb
节点数2 Nodes RAC
内存4G
SWAP4G

\2. 共享存储规划:

磁盘组冗余方式用途大小
OCRNormalOCR,Votedisk表决磁盘等1Gx3
DATAExternal数据文件、控制文件等20G
FRAExternal存放归档、闪回文件等5G

\3. IP地址规划:

节点 hostnamexk1xk2
public ip192.168.10.60192.168.10.61
vip10.10.10.1010.10.10.11
private ip192.168.10.62192.168.10.63
scan ip192.168.10.65192.168.10.65

\4. 虚拟机设置:

  • 每个虚拟机2块网卡,节点之间网卡名称要一致,例如都为ens33 ens34
  • 一块网卡用于业务访问, 一块用于心跳网络
  • 用于心跳的网卡设置仅主机模式,另一块NAT

注意:

  • 主机名不要使用大写字母
  • 主机名不能用_线,不建议用-线
  • 主机名长度不要超过8个字符,但是vip、scan ip可以
  • Oracle RAC数据库节点间通信网络需要使用单独的交换机
  • 实际的存储规划需要根据业务情况确定

2、系统参数配置

这部分是软件安装前的操作系统参数配置,分别在两个节点操作

1.依赖包安装

2.关闭防火墙

3.关闭SELINUX

参考文档:How to Disable or set SELinux to Permissive mode (Doc ID 457458.1)

3.关闭透明大页

rac环境下会导致节点重启及性能问题
查看设置前情况

图片
修改设置,加入如下配置

设置后需要重启系统
图片

4.创建目录、组和用户

5.内核参数配置

内核参数的说明参照【安装】CentOS7.7下图形化安装Oracle11gR2 2.9小节说明

注意:

  1. kernel.sem这个参数
    四个数字:第1个数字应约大于Oracle进程数,第2个数字建议是第1和第4个数字的乘积。这个参数能够满足大部分使用,但对于连接数较高(比如单节点8000个连接)可以设置为:
    10000 1280000 512 1024
  2. kernel.shmall = physical RAM size / pagesize For most systems, this will be the value 2097152. See Note 301830.1 for more information.前为官方文档说明,但是有些教程是shmmax/pagesize
  3. kernel.shmmax = 1/2 of physical RAM. This would be the value 2147483648 for a system with 4GB of physical RAM. See Note:567506.1 for more information.
  4. kernel.shmmax定义了单个共享内存段的最大值,要放下整个数据库SGA内存的大小。要大于sga_mas_size,在后面的安装过程中我们设置sga为1.92G小于此处设置
  5. limits文件里配置的memlock要大于或等于kernel.shmmax
  6. vm.nr_hugepages一定要计算正确,错误的设置会导致虚拟机启动失败

6.修改系统profile

7.Limit 配置

8.配置/etc/hosts

hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,hosts文件包含了ip地址与主机名之间的映射

9.设置环境变量

grid用户增加:

oracle用户增加:

10.共享内存段

11.关闭numa功能

图片
参考:

  1. https://www.thegeekdiary.com/how-to-disable-numa-in-centos-rhel-67/
  2. https://www.cnblogs.com/wjoyxt/p/4804081.html

12.pam配置

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

13.禁用或删除虚拟网卡virbr0

为防止私有网路原因引起network HB丢失,导致root.sh无法成功执行,需要禁用linux上虚拟网卡,此处操作后在grid安装中就看不到virbr0了

参考:
How to Remove virbr0 and lxcbr0 Interfaces on Oracle Linux (Doc ID 2197674.1)

14.配置NOZEROCONF

参考:
How To Prevent Bogus Entry 169.254.0.0/255.255.0.0 Automatically Added To Routing Table (Doc ID 1161144.1)

15.配置nsswitch.conf

nsswitch.conf保存了域名的检测顺序。某些情况下,NIS(Network Informaion System)可能会导致SCAN域名解析异常,所以需要编辑如下文件设置顺序

16.avahi-daemon

avahi-daemon该守护进程配合缓存用户程序的答复,以帮助减少因答复而产生的网络流量。
根据官方一些文档已经列出一些BUG,建议关闭。
只要上面NOZEROCONF配置为打开,则avahi-daemon就为其服务

17.上传安装包到节点1

p13390677_112040_Linux-x86-64_1of7.zip
p13390677_112040_Linux-x86-64_2of7.zip
p13390677_112040_Linux-x86-64_3of7.zip
前两个是DB安装包,第三个是grid安装包

cd /opt
mkdir soft/
chmod 777 /opt/soft/
chmod 777 p13390677_112040_Linux-x86-64_3of7.zip
unzip p13390677_112040_Linux-x86-64_3of7.zip

3、配置共享存储及UDEV

在VM虚拟机实现共享存储有两种方式

  • 使用Openfiler等存储管理软件
  • 使用VM虚拟机本身添加共享存储

1.方式一:Openfiler

为模拟存储多路径功能,本篇采用Openfiler方式,请参考前序文章
【多路径】CentOS7.7下使用Openfiler+Multipath+UDEV

2.方式二:使用VM虚拟机本身添加共享存储

这种方式比较方便,平常自己搭建测试环境就用这种就好,UDEV同上

  1. 关闭rac01、02;
  2. rac01-【编辑虚拟机设置】-【添加】-【硬盘】-【SCSI】-【创建新的虚拟磁盘】-设置磁盘大小,立即分配所有磁盘空间,将虚拟磁盘存储为单个文件-下一步完成-创建完成-确定;
  3. 再选中刚才创建的磁盘-【高级】-虚拟设备节点选择SCSI1:0(增加多块盘按顺序选择),勾选独立,永久;
  4. 如果【永久】选项是灰色的,就需要修改配置文件找到rac01的文件夹-编辑rac01.vmx这个文件,将下方的全部配置加进去:

  1. 启用UUID
    还是在虚拟机关闭状态下编辑rac01.vmx文件,增加下面配置

  1. rac02设置-添加-硬盘-选择“使用现有虚拟磁盘”-下一步-选择rac01下的rac01-0.vmdk-完成-高级-选择SCSI1:0,勾选独立-确定;
  2. 完成上述操作以后,开启虚拟机,使用fdisk -l命令分别在rac01、02查看,注意查询到磁盘盘符一定要相同;

4、grid安装

为解决grid安装BUG需要打两个补丁
参考:Installation walk-through - Oracle Grid/RAC 11.2.0.4 on Oracle Linux 7 (文档 ID 1951613.1)
将两个补丁上传到/opt/soft路径下

1.p19404309_112040_Linux-x86-64.zip补丁安装

2.grid软件安装

图片
图片
图片
图片
图片
图片
图片
图片
图片

说明:
ASM磁盘组使用的是默认的1M AU大小,对于大型数据库,这会造成较多的内存占用,同时对性能略微有些影响,建议对于新增的用于放置数据文件的ASM磁盘组,适当调大AU大小,比如4M或8M(2的幂值)。根据实际经验,建议设置AU 为4m

图片
图片
图片
图片
图片
图片
图片
第一个脚本先在两个节点分别执行
第二个脚本执行前需要先打补丁,因为在7下执行脚本会报错,需要先打p18370031_112040_Linux-x86-64.zip这个补丁

下面继续执行第二个脚本,这里放一下执行第二个脚本的内容

点击OK继续

图片
图片
图片
图片

到此grid软件安装完成

5、创建ASM磁盘

图片
图片
图片
图片
图片

最后按照规划创建完成所有磁盘组并退出
将grid用户的ORACLE_HOME写入两个节点root用户的.bash_profile文件中,方便操作

关于ASM的知识单独写一篇,到这里磁盘组创建完毕

6、database软件安装

之前已经将db软件上传到/opt/soft目录下,分别解压缩

执行安装:

图片
图片
图片
图片
图片
图片
图片
图片
图片
图片

安装到56%报错,这里为CentOS7下安装11gR2的bug,处理方式:
/oracle/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
先备份,再修改,只改节点1
搜索NMECTL这一行 在括号后面加上 -lnnz11 修改保存
图片
继续执行,点击retry

图片
图片

完成

7、dbca建库

图片
图片
图片
图片
图片
图片
图片
图片
图片
图片
图片

SGA+PGA要小于物理内存的80%,推荐范围在40-60%
本环境物理内存4G,留给grid集群1G,余3G用于分配SGA+PGA
3Gx80%=2.4G
SGA=2.4x80%=1920M
PGA=2.4.20%=480M
最后2.4/4=60%,在推荐范围内

图片
图片
图片
图片
图片
图片
图片
图片

8、参考

https://mp.weixin.qq.com/s/olIRhxh0gHECQ9h8_yETJQ

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部