我使用RPM在Fedora Linux 29上安装了Oracle Express Edition 18.4。
安装进行得相当不错,除了我必须从源代码构建compat-libcap1
RPM以来,因为Fedora 29并未提供该RPM。
使用/etc/init.d/oracle-xe-18c configure
进行的设置没有问题,我可以正常启动,停止和使用Oracle。
我将$ORACLE_HOME/lib
添加到/etc/ld.so.conf.d/oracle-xe-x86_64.conf
并运行ldconfig
,以便Oracle在所有可执行文件的库路径中。
但是在下次重新启动时,机器没有再次启动。可能是什么问题?
答案 0 :(得分:2)
经过较长的调试会话后,发现问题在于将库目录添加到默认库路径中。
Oracle提供了一个共享库libexpat.so.1
,该共享库也由操作系统提供,但与二进制不兼容。
现在引导过程中所需的某些可执行文件(特别是/usr/bin/dbus-daemon
)需要该共享库,而它们以以下内容开头:
symbol lookup error: /usr/bin/dbus-daemon: undefined symbol: XML_SetHashSalt
一旦弄清楚了,解决方案就很简单:从默认共享库路径中删除$ORACLE_HOME/lib
。