Oracle 12c GI安装在 AIX root脚本执行报错的处理方法

作者简介:邵菲,现就职于北京海天起点技术服务股份有限公司,专家组成员,拥有10G OCP,11G OCP,11G OCM证书,从业13年,现主要负责海天相关客户的数据库维护,优化,故障处理等工作,在移动通信领域有10余年数据库开发及运维经验,擅长数据库故障诊断与处理,数据库开发及业务逻辑优化等相关工作。

在日常的Oracle12c Grid Infrastructure (GI)安装过程中,我们大多数会在一台或多台新的刚安装过系统的小机上进行数据库的实施操作,有时候因为生产环境的需求或设备的再利用等原因,也有很多时候会在一台已经运行过一段时间的主机上进行数据库的重新安装操作,那么下面我们这个报错就是在已安装过11GR2版本的IBM小机上进行12C数据库的安装时会出现的问题,因现在12C数据库在大部分企业中应用还相对较少,所以这个问题也不多见,新的设备在安装时是不会有这种问题出现的。

场景描述:

因应用开发是在Oracle 12C环境下开发测试完成,所以现在需要在生产环境中部署一套12C的集群数据库,又因设备紧缺,故此将原有一套在P750运行的11G集群数据库迁移到同版本的其他设备中,并将此设备上的原数据库清除后,安装12C版本的新集群,以上为实施场景的描述。

实施过程描述:

  1. 运维人员将原11G版本集群数据库涉及的安装文件及文件夹进行了RM的操作
  2. 重启了主机后,开始进行12C集群的安装
  3. 安装GI文件成功,准备运行root.sh脚本
  4. 在运行root.sh脚本时失败

    前3步过程都很顺利,看上去似乎没有什么问题,当运行root.sh后,安装过程失败,查看安装日志后发现有如下的详细报错信息:

错误分析:

通过这个报错信息我们大概可以看出,是由于ACFS在安装的过程中由于监测到以前的版本,在卸载过程中出错,又无法加载新的驱动,所以导致安装失败,那么之前运维人员是整体rm的,那么这个问题就说明,还是有部分没有卸载干净。

当时安装人员又在系统中找了相关的目录和文件,时行了删除,重新安装运行root.sh脚本,但同样的问题依然存在。

其实这个问题就是因为我们在已安装过11G的服务器上安装12C版本GI,由于没有遵循ORACLE的卸载过程,而是通过RM等其它的方法,导致旧版本的ACFS文件保存在/usr/bin下,使得这些旧的方法阻止了12C的安装。根据安装日志的报错的信息我们也能大概知道这个原因,同样MOS的1929899.1文档也说明的12C在安装过程中此问题的原因:

CHANGES

 11.2 GI was installed on the same server, then it was removed. 12.1 GI installation was done after that.

CAUSE

The 11.2 GI deinstallation was not done properly, likely done via rm <GRID_HOME>, rather than following the deinstall procedure. Hence the old version ACFS files remain in /usr/lib/methods which prevent the new 12.1 installation to complete

处理方法:

以下是这个问题的详细处理过程:

  1. 以root用户手工处理,将以下文件从<12.1 GRID_HOME> / usm / install / cmds / bin复制到/usr/lib/methods/,覆盖现有的文件。

  2. 修改以下文件:

  3. 运行以下命令以完成旧ACFS版本的卸载:

    注意:不执行步骤1和2,可能会报告以下错误:

    通过以上的3 步操作,然后我们再重新运行root.sh脚本,那么就可以顺利的完成12C集群的安装,从而完成最新集群数据库的实施。

    由于我们日常的实施过程中存在一些习惯,没有按照正常的卸载步骤进行软件的删除,所以容易会出现一些非正常情况的报错,所以建议大家还是严格按照正确的安装与卸载步骤进行实施,减少问题的出现。

 

未经允许不得转载:Oracle一体机用户组 » Oracle 12c GI安装在 AIX root脚本执行报错的处理方法

相关推荐