​ 最近,在处理oracle gateway的报错问题。只因个人的测试环境已经迁移到docker上了,又懒得装一套环境就直接在机器上安装oracle11g。今天分享的故事就从此开始……

运行环境

项目 描述
操作系统 CentOS Linux release 7.6.1810 x86_64
内存 2G
硬盘大小 30G
CPU Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
虚拟机软件 Oracle VM VirtualBox 6.0.2
Oracle RDBMS Oracle 11gR2 for Linux x86_64

问题描述

​ 由于只是做个测试,选择了安装最简单的单机版,不安装GI。根据以往的经验,执行命令安装系统补丁。但在安装进度在84%,出现类似于下图的报错(因为当时无保留截图,只能在网上找张类似的):

​ 根据以往的经验告诉我,出现这样的问题,肯定是操作系统补丁包缺失导致的。检查了一番,发现需要都操作系统补丁都已经安装上了。

INFO: mv -f /u01/app/oracle/product/11.2.0/dbhome_1/bin/ctxlc /u01/app/oracle/product/11.2.0/dbhome_1/bin/ctxlcO

INFO: mv ctxlc /u01/app/oracle/product/11.2.0/dbhome_1/bin/ctxlc

INFO: chmod 751 /u01/app/oracle/product/11.2.0/dbhome_1/bin/ctxlc

INFO: gcc -o ctxhx -m64 -L/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ -L/u01/app/oracle/product/11.2.0/dbhome_1/lib/ -L/u01/app/oracle/product/11.2.0/dbhome_1/lib/stubs/  /u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ctxhx
.o -L/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ -lm -lsc_fa -lsc_ex -lsc_da -lsc_ca -lz -lctxhx -Wl,-rpath,/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -ln
ls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `c
INFO: at /u01/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` INFO: //usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
collect2: error: ld returned 1 exit status INFO: make: *** [ctxhx] Error 1 INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'install' of makefile '/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'. See '/oracle/app/oraInventory/logs/installActions2019-03-24_05-39-13AM.log' for details.
Exception Severity: 1
INFO: Linking Text executables
INFO: Linking Text executables
INFO: The output of this make operation is also available at: '/u01/app/oracle/product/11.2.0/dbhome_1/install/make.log'
INFO:

​ 但之前已经再三确认过补丁包已经安装完成,故在my oracle support上查找并没有找到相关的内容。最后寻求度娘的帮助,结果找到了一遍相关的case,说是glibc版本过高导致的,高于2.14。

# yum list glibc
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Installed Packages
glibc.x86_64 2.17-260.0.15.el7_6.3 @ol7_latest
Available Packages
glibc.i686 2.17-260.0.15.el7_6.3 ol7_latest

​ 跟着文档的内容进行修改相关文件ins_ctx.mk点击Retry继续安装。在同样的进度位置出现报错ins_emagent.mk文件的报错,然后修改文件ins_emagent.mk内容再点击Retry继续安装即可完成安装。

解决方案

​ 以下是文件ins_ctx.mk和ins_emagent.mk需修改的相关内容:

修改文件/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk

......
ctxhx: $(CTXHXOBJ)
$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
......

修改为

......
ctxhx: $(CTXHXOBJ)
-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
......

修改文件/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

......
#===========================
# emdctl
#=========================== $(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL)
......

修改为

......
#===========================
# emdctl
#=========================== $(SYSMANBIN)emdctl:
$(MK_EMAGENT_NMECTL) -lnnz11
......

附录

操作系统补丁安装命令

yum -y  install gcc* libaio* glibc* compat-* elfutils* glibc* libgcc* libstdc++* unixODBC* pdksh* ksh*
yum -y install libaio*.i686 glibc*.i686 compat-*.i686 elfutils*.i686 glibc*.i686 libgcc*.i686 libstdc++*.i686 unixODBC*.i686 pdksh*.i686 *ksh*.i686

参考文档

《2017-11-17 DBA日记,CENTOS 7装ORACLE 11g时报ins_ctx.mk错》

CentOS上安装oracle11g报错处理的更多相关文章

  1. 解决windows64位系统上安装mysql-python报错

    解决windows64位系统上安装mysql-python报错 2018年03月12日 13:08:24 一个CD包 阅读数:1231    版权声明:本文为博主原创文章,未经博主允许不得转载. ht ...

  2. CentOS 8安装Docker报错(Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.)

    CentOS8安装docker和docer-conpose 报错如下Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires contain ...

  3. CentOS 6安装Oracle报错解决方案

    1. Preparing to launch Oracle Universal Installer from /tmp/OraInstall2017-05-23_04-18-48AM. Please ...

  4. mac电脑上安装appium报错:Failed at the appium-chromedriver@4.25.1 postinstall script.

    mac电脑安装appium,装好node.js后,使用命令:npm install appium@1.18.0,安装appium,报如下错误 ``` ERR! errno1 ERR! appium-c ...

  5. centos 7安装mysql报错-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory

    [root@localhost mysql]# ./scripts/mysql_install_db  --user=mysql -bash: ./scripts/mysql_install_db: ...

  6. [sql]sqlite3板子上安装运行报错

    不管是apt-get install还是deb直接安装都抱如下错误: SQLite header and source version mismatch -- ***** -- *****

  7. windows10安装oracle11g报错ORA-01034、ORA-01078

    ORA-01034表示数据库实例未建立,可以先用管理员账号进入一个空白实例 sqlplus / as sysdba; 如果您当前使用的账号是安装oracle的账号,则不需要账号密码就可以登陆oracl ...

  8. Centos pip 安装uwsgi 报错“fatal error: Python.h: No such file or directory”

    解决方法: 安装python-devel即可,注意,不是python-dev yum -y install python-devel

  9. centos在线安装mysql报错:file /etc/my.cnf conflicts between attempted installs of mysql-community-server-8.0.16-2.el7.x86_64 and MariaDB-common-10.4.6-1.el7.centos.x86_64

    错误提示:file /etc/my.cnf conflicts between attempted installs of mysql-community-server-8.0.16-2.el7.x8 ...

随机推荐

  1. python 之闭包

    原文 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. 我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_sum(*args): a ...

  2. javaSystem.out.println()输出byte[]和char[]异常的问题

    javaSystem.out.println()输出byte[]和char[]异常的问题 今天 突然有人问我他写的byte[]和char[],在用System.out.println()输出的时候所得 ...

  3. js初级DOM&BOM知识点总结

    第一章 js的组成DOM BOM ECMAScript javaScript 是一种直译是脚本语言 js语言特点 .脚本编写语言 .基于对象的语言 .简单性 .动态性 .安全性 .跨平台性 C/S是C ...

  4. CKRule业务规则管理系统部署说明

    1.   程序包说明 软件是使用WinForm开发的,包含服务端和客户端,服务端部署在IIS上面,客户端可以在已经安装.Net4.0的windows上面运行. 1.1.  服务端程序包 CKBrmsS ...

  5. Polly一种.NET弹性和瞬态故障处理库(重试策略、断路器、超时、隔板隔离、缓存、回退、策略包装)

    下载地址:https://github.com/App-vNext/Polly 该库实现了七种恢复策略. 重试策略(Retry) 重试策略针对的前置条件是短暂的故障延迟且在短暂的延迟之后能够自我纠正. ...

  6. wxpython wx.windows的API

    wx.Window is the base class for all windows and represents any visible object on screen. All control ...

  7. springTask和Schedule学习

    Spring 4.x Task 和 Schedule 概述 http://www.jianshu.com/p/1778f6b9646e spring framework --- 定时任务(翻译官方文档 ...

  8. 通过bat设置系统环境变量

    在软件运行过程中,可能需要配置计算机的环境变量,在这里分为两种情况: 一:增加或修改环境变量只在当前软件环境中使用 如我们设置Java的环境变量: set CLASSPATH=%CLASSPATH%; ...

  9. February 28 2017 Week 9 Tuesday

    Time you enjoy wasting, was not wasted. 你乐于挥霍的时间,都不能算作是浪费. A few days ago, I learned a sentence from ...

  10. note01-计算机网络

    1.基础概述 三网: 电信网络.有线电视网络.计算机网络(连通&共享) 终端->z本地ISP->x地区IXP->y主干ISP 通信方式: C/S .P2P(即是client也 ...