分享oe2203安装oracle11G的过程

环境

系统版本:openEuler 2203 sp2
数据库:oracle11G
安装包:p13390677_112040_Linux-x86-64_1of7.zip和p13390677_112040_Linux-x86-64_2of7.zip
桌面:KiranUI
源教程:oracle11g-图形安装(centos7)

安装前言

  1. 本文涉及的所有环境变量和安装路径均源自oracle11g-图形安装(centos7)

  2. 关于系统的修改项就不赘述了,网上基本都讲了一遍,并且oracle图形化安装最后会有一个安装前的检查,到这个界面在修改内核参数是可以,安装的软件包也可以,limits资源限制没试过

  3. 内核参数的修改需要符合实际,不建议按网上文档直接修改

  4. 安装前检查项glibc-headers在openeuler里面变成glibc-devel,可以用rpm -q glibc-devel确认,此项可以忽略

  5. elfutils-libelf和elfutils-libelf-devel在openeuler系统里面被改名替换成elfutils和elfutils-devel,可以忽略

  6. pdksh不影响,可以忽略

  7. LD_LIBRARY_PATH这个变量在很多教程里面都被提到,会在oracle用户下创建这个变量,这个我在处理安装编译的时候会用到的一个变量

  8. oracle的GUI安装程序需要用到图形,我这边是需要桌面的,提前就安装过了,如果没有桌面可以想办法加参数在字符模式下安装,如果图形化安装的话要注意,图形一般是本机桌面或者X11(ssh)转发的,网上很多自己定义DISPLAY,那个我感觉一般都有问题,有条件的话就登录到oracle的桌面开启GUI程序

  9. compat-libstdc+±33-3.2.3-72这个rpm包,我先直接用的centos7的,因为他里面就一个libstdc++.so.5的动态库,oe上这个还没去找有没有,等后面有更好的解决办法在看看这个

报错处理

./runInstaller打不开

正常执行之后,会打开GUI程序,但到这个报错,原因是没有安装libnsl的rpm包,用yum或者rpm安装即可,如果用rpm记得提前处理依赖问题

GUI安装程序打开乱码

原因是我LANG是zh_CN.UTF-8,但缺少字体包,很怀疑这个字体包是微软雅黑那个,但不想导入系统测试,直接在终端执行

export LANG=en_US.UTF-8

然后再

./runInstaller

就是英文界面了


安装报错的日志查看方法

安装程序会提示一个See xxxx.log,直接看这个文件
image

client_sharedlib 提示报错

查看日志是缺少libpthread_nonshared.a,详细问题可以查看下面的issue
gitee issue
这个报错可以点这个 glibc-compat下载链接 进行安装

libaio问题


处理方法如下
从centos7上扣这个动态库。放到oracle定义的LD_LIBRARY_PATH的目录下,做软链接
因为动态库和oe的同名,放到全局污染全局环境,后面有程序如果在全局下用这个动态库可能也会有意想不到的事情,所以直接扔oracle的目录下

cp libaio.so.1.0.1 /u01/app/oracle/product/11.2.0/db_1/lib
ln -s libaio.so.1.0.1 libaio.so.1

-lnsl的报错


oe里面的动态库如下


直接手动做一个libnsl.so出来

cd /usr/lib64
ln -s libnsl-2.28.so libnsl.so

agent mnhs报错


oracle下修改配置

cp	$ORACLE_HOME/sysman/lib/ins_emagent.mk $ORACLE_HOME/sysman/lib/ins_emagent.mk.bak
vim $ORACLE_HOME/sysman/lib/ins_emagent.mk

搜搜emdctl,$(MK_EMAGENT_NMECTL)后面加 -lnnz11
image

结尾

基本上我遇到的报错就这些,但可能别人安装的时候缺少很多rpm包,我这机器拿到手就带桌面的,本文也主要分享安装的时候报的这些编译问题等

3 Likes


感谢大佬的支持

OEPKGS-SEARCH 这个页面搜的包

感谢分享!