ITPub博客

首页 > 数据库 > Oracle > CentOs 7.X 安装Oracle 11g RAC的坑

CentOs 7.X 安装Oracle 11g RAC的坑

原创 Oracle 作者:flybluey 时间:2019-09-17 16:39:40 0 删除 编辑

随着 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 即可



如还有其他问题,比如重启系统,集群无法正常启动,欢迎留言~~

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29346172/viewspace-2657290/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
长期从事数据库相关行业职务。

注册时间:2015-10-14

  • 博文量
    13
  • 访问量
    14081