欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

RHEL7.X 安装 11.2.0.4 RAC 问题

程序员文章站 2022-03-02 17:18:19
随着Linux 7 版本的普及,但Oracle数据库主流版本仍是11gR2,11.2.0.4 是生产安装首选。由于11.2.0.4对Linux 7 的支持不很完美,在Linux 7 上安装会遇到几处问题,以此记录下来。 https://docs.oracle.com/cd/E11882_01/rel ......

  随着Linux 7 版本的普及,但Oracle数据库主流版本仍是11gR2,11.2.0.4 是生产安装首选。由于11.2.0.4对Linux 7 的支持不很完美,在Linux 7 上安装会遇到几处问题,以此记录下来。

https://docs.oracle.com/cd/E11882_01/relnotes.112/e23558/toc.htm#CJAJEBGG

 

1.安装GI执行root.sh脚本时,ohasd 进程无法正常启动

ohasd failed to start
Failed to start the Clusterware. Last 20 lines of the alert log follow:
2018-04-19 09:54:30.897:
[client(19244)]CRS-2101:The OLR was formatted using version 3.

alert:

Oracle High Availability Service has timed out waiting for init.ohasd to be started.

 

  因为Oracle Linux 7(和Redhat 7)使用systemd而不是initd来启动/重新启动进程,并将它们作为服务运行,所以当前的11.2.0.4和12.1.0.1的软件安装不会成功,因为ohasd进程没有正常启动。

解决方法一:

在root.sh执行之前先打上补丁:18370031。

 

解决方法二:手动在systemd中添加ohasd服务

(1).创建一个空服务文件:/usr/lib/systemd/system/ohasd.service

touch /usr/lib/systemd/system/ohasd.service

 

(2).编辑文件ohasd.service添加如下内容

vi   /usr/lib/systemd/system/ohasd.service

[Unit]
Description=Oracle High Availability Services
After=syslog.target

[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Restart=always

[Install]
WantedBy=multi-user.target

 

(3).添加和启动服务

systemctl daemon-reload
systemctl enable ohasd.service
systemctl start ohasd.service

查看运行状态:

[root@rac1 system]# systemctl status ohasd.service
● ohasd.service - Oracle High Availability Services
Loaded: loaded (/usr/lib/systemd/system/ohasd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2018-04-19 14:10:19 CST; 1h 16min ago
Main PID: 1210 (init.ohasd)
CGroup: /system.slice/ohasd.service
└─1210 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple

Apr 19 14:10:19 bms-75c8 systemd[1]: Started Oracle High Availability Services.
Apr 19 14:10:19 bms-75c8 systemd[1]: Starting Oracle High Availability Services...

 

(4).重新执行root.sh脚本

注意: 为了避免其余节点遇到这种报错,可以在root.sh执行过程中,待/etc/init.d/目录下生成了init.ohasd 文件后执行systemctl start ohasd.service 启动ohasd服务即可。若没有/etc/init.d/init.ohasd文件 systemctl start ohasd.service 则会启动失败。

 

2.安装database软件时候会报错:

Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'

解决方法一: 

选择 Continue 继续,然后打上补丁:19692824 

解决方法二:

编辑文件 $ORACLE_HOME/sysman/lib/ins_emagent.mk
vi /u01/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk 

找到 $(MK_EMAGENT_NMECTL) 这一行,在后面添加 -lnnz11 如下:
$(MK_EMAGENT_NMECTL) -lnnz11

然后点击retry 即可