最近客户需要在国产Linux操作系统中标麒麟上安装19c数据库,根据oracle官方给出操作系统支持版本来看,oracle 19C只支持到了麒麟V7,如果想要在麒麟V10上安装19c数据库,需要注意一下几点问题:
1.CV_ASSUME_DISTID
需要在安装前设置系统兼容性版本为 RHEL 7.6
export CV_ASSUME_DISTID=RHEL7.6
复制
2.libnsl.so.1 => not found
在运行 runInstaller 时,出现了以下的报错:
$ ./runInstaller
/app/oracle/product/19.0.0/dbhome_1/perl/bin/perl: error while loading shared libraries: libnsl.so.1
: cannot open shared object file: No such file or directory
复制
检查依赖:
$ ldd /app/oracle/product/19.0.0/dbhome_1/perl/bin/perl
linux-vdso.so.1 (0x00007ffff7fd2000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffff7f92000)
libnsl.so.1 => not found
libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7f8d000)
libm.so.6 => /lib64/libm.so.6 (0x00007ffff7e0a000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007ffff7dcf000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007ffff7dca000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffff7c07000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ffff7bee000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffff7fd4000)
$ cd /lib64/
$ ll libnsl.so.1*
ls: 无法访问 'libnsl.so.1*': 没有那个文件或目录
$ ll libnsl*
lrwxrwxrwx 1 root root 15 3月 15 2020 libnsl.so.2 -> libnsl.so.2.0.0
-rwxr-xr-x 1 root root 96480 3月 15 2020 libnsl.so.2.0.0
复制
可以看到系统自带的libnsl.so是2.0的版本,需要创建一个名字为1.0的软链接:
使用root用户:
# cd /lib64/
# ln -s libnsl.so.2.0.0 libnsl.so.1
复制
3.缺失/usr/lib64/libpthread_nonshared.a文件
INFO:
make[2]: Leaving directory '/app/oracle/product/19.0.0/dbhome_1/rdbms/lib'
INFO:
make[1]: Leaving directory '/app/oracle/product/19.0.0/dbhome_1/rdbms/lib'
INFO:
/app/oracle/product/19.0.0/dbhome_1/bin/genclntsh
INFO:
/usr/bin/ld
INFO:
: cannot find
INFO:
/usr/lib64/libpthread_nonshared.a
INFO:
复制
在麒麟v10对应目录下中没有该依赖文件,从Centos8.4的相同位置复制一份到麒麟V10的对应目录下,顺利通过。
4.libasmclntsh19.ohso文件缺失
在安装到11%的时候,出现了两次图中的报错,第一次是因为/usr/lib64/libpthread_nonshared.a文件不存在,复制文件解决第一个问题后,又出现这个报错,查看安装日志发现:
/app/oracle/product/19.0.0/dbhome_1/lib/libasmperl19.so -shared -z noexecstack -Wl,--disable-new-dtags -L/tmp/bootstraplib/ -L/app/oracle/product/19.0.0/dbhome_1/lib/ -L/app/oracle/product/19.0.0/dbhome_1/rdbms/lib/ -L/app/oracle/product/19.0.0/dbhome_1/lib/stubs/ -Wl,--version-script=/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/libasmperl19.def -Wl,--whole-archive /app/oracle/product/19.0.0/dbhome_1/lib/libasmperl19.a -Wl,--no-whole-archive -lclntsh -lclntshcore -lasmclntsh19 -lhasgen19 -lskgxp19 -locr19 -lcell19 -lirc
复制
这一条安装命令无法执行,提示无法找到libclntshcore.so
去对应文件目录下去ls,发现该文件确实不存在了。怀疑是软件安装包不完整,就解压到了其他目录下对比了一下,发现解压之后确实是有这个文件的:
如此判断很有可能是OUI在安装过程中对该文件进行了删除操作,于是把该文件重新cp到安装目录下,点击retry,依然报错,检查文件发现又被删除了。
解决方法是:将该文件cp到$ORACLE_HOME/lib目录后,使用oracle用户手工执行:
/app/oracle/product/19.0.0/dbhome_1/bin/orald -o /app/oracle/product/19.0.0/dbhome_1/lib/libasmperl19.so -shared -z noexecstack -Wl,--disable-new-dtags -L/tmp/bootstraplib/ -L/app/oracle/product/19.0.0/dbhome_1/lib/ -L/app/oracle/product/19.0.0/dbhome_1/rdbms/lib/ -L/app/oracle/product/19.0.0/dbhome_1/lib/stubs/ -Wl,--version-script=/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/libasmperl19.def -Wl,--whole-archive /app/oracle/product/19.0.0/dbhome_1/lib/libasmperl19.a -Wl,--no-whole-archive -lclntsh -lclntshcore -lasmclntsh19 -lhasgen19 -lskgxp19 -locr19 -lcell19 -lirc
复制
然后点击retry,顺利通过。
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
不错!
2年前

评论
您好,您的文章已入选墨力原创作者计划合格奖,10墨值奖励已经到账请查收!
❤️我们还会实时派发您的流量收益。
2年前

评论
热门文章
关于普通表空间出现ORA-01652无法扩展temp段问题的分析
2022-05-12 1712浏览
SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enable
2022-05-19 648浏览
【MySQL 30周年庆】MySQL 8.0 OCP考试限时免费!教你免费领考券
2025-04-25 3186浏览
2025年4月国产数据库大事记:4个千万级中标项目诞生!2024年达梦净利3.6亿、金仓净利8006.6万……
2025-04-30 2207浏览
外国CTO也感兴趣的开源数据库项目——openHalo
2025-04-21 1924浏览