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

  复制代码

  (编辑:雷林鹏 来源:网络)

RHEL7.X 安装 11.2.0.4 RAC 问题的更多相关文章

  1. RHEL7或CentOS7安装11.2.0.4 RAC碰到的问题

    RHEL7或CentOS7安装11.2.0.4 RAC碰到的问题 随着Linux 版本的普及,但Oracle数据库主流版本仍是11gR2, 的支持不很完美,在Linux 上安装会遇到几处问题,以此记录 ...

  2. RHEL6.5安装11.2.0.3 RAC并打补丁

    [TOC] 一,主机配置 1.修改hosts文件(两节点) #127.0.0.1 localhost localhost.localdomain localhost4 localhost4.local ...

  3. Oracle 11.2.0.4 RAC安装最新PSU补丁

    环境:两节点RAC(RHEL 6.4 + GI 11.2.0.4 + Oracle 11.2.0.4) 需求:安装最新PSU补丁11.2.0.4.7 1.下载补丁和最新OPatch 2.检查数据库当前 ...

  4. ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档

    ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档 2015-10-21 12:51 525人阅读 评论(0) 收藏 举报  分类: Oracle RA ...

  5. HPDL380G8平台11.2.0.3 RAC实施手册

    HPDL380G8平台11.2.0.3 RAC实施手册   1 前言 此文档详细描述了Oracle 11gR2 数据库在HPDL380G上的安装RAC的检查及安装步骤.文档中#表示root用户执行,$ ...

  6. oracle 11.2.0.4 rac 打补丁

    本次安装pus环境是11.2.0.4 rac,打的patch为11.2.0.4.180717 (Includes Database PSU),gi补丁和数据库补丁一起打 安装最新opatch版本 un ...

  7. opatch auto 安装11.2.0.4.20190115 PSU遇到 OUI-67133: Execution of PRE script failed,with returen value 1 报错

    AIX 7.2 下Oracle 11.2.0.4  RAC数据库root用户在使用 /u01/app/11.2.0/grid/OPatch/opatch auto /soft/28813878 -oc ...

  8. CentOS 7.1静默安装11.2.0.3 64位单机数据库软件

    第1章 CentOS 7.1静默安装11.2.0.3 64位单机数据库软件 1.1  安装前的准备工作 1.1.1      软件准备 1.1.2      检查硬件 注意这里的内存应该满足要求,不然 ...

  9. Oracle安装11.2.0.4.180116补丁及如何检查数据库安装补丁

    最近做了一个安装11.2.0.4.180116补丁的实验,突然想起之前和同事讨论的一个问题:如何检查数据库安装补丁的版本,之前搜到的是去查dba_registry_history,有的说在操作系统中执 ...

随机推荐

  1. Linux Git服务器安装

    ① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...

  2. mysql-sql高级应用

    sql语言进阶 典型操作 order by - select * from play_list order by createtime; - select * from play_list order ...

  3. Worst Performing Queries

    WITH TMP AS ( SELECT TOP 100 CAST(SUM(s.total_elapsed_time) / 1000000.0 AS DECIMAL(10, 2)) AS [Total ...

  4. linux/Mac使用du查看目录占用的磁盘大小

    [1]du命令用来查看目录或文件所占用磁盘空间的大小.常用选项组合为: du -sh [2]若要查看一个目录下每个文件和文件夹的磁盘占用空间,使用如下命令: du -ah --max-depth=1 ...

  5. KL与JS散度学习[转载]

    转自:https://www.jianshu.com/p/43318a3dc715?from=timeline&isappinstalled=0 https://blog.csdn.net/e ...

  6. Flask上下文管理及源码刨析

    基本流程概述 - 与django相比是两种不同的实现方式. - django/tornado是通过传参数形式实现 - 而flask是通过上下文管理, 两种都可以实现,只不实现的方式不一样罢了. - 上 ...

  7. C++中的常量定义

    本篇笔记总结自一次代码检视. 一般来说,使用C语言编程时我们都习惯在代码当中使用C当中的宏定义来定义一个数值常量: #define MY_CONST 7 在C++开发项目时,也会经常存在沿袭C当中常量 ...

  8. Java 和 Python 解析动态 key 的 JSON 数据

    一.概述 解析JSON过程中,什么情况都可能遇到.遇到特殊的情况,不会怎么办?肯定不是设计的问题,一定是你的姿势不对. 有这样一种JSON需要解析: { "b3444533f6544&quo ...

  9. Python的星号(*)和双星号(**)用法

    ①引言 在Python中,星号除了用于乘法数值运算和幂运算外,还有一种特殊的用法是在变量前加单个星号或两个星号,实现多参数的传人或变量的拆解. ②什么是星号变量 最初,星号变量是用在函数的参数传递上的 ...

  10. Qt的信号和槽是如何工作的

    用Qt做过开发的朋友,不知道是否曾为下面这些问题疑惑过:我们知道Qt是基于C++的,Qt写的代码最终还是要由C++编译器来编译,但是我们的Qt代码中有很多C++里没有的关键字,比如slots\sign ...