如何解决sqlplus冲突?

时间:2013-10-30 07:51:47

标签: ruby-on-rails ruby linux oracle centos

我正在为gem "ruby-oci8"安装Oracle Instant Client:Basic,SDK和SQL * Plus软件包v 12.1.0.1,而不是我意识到我需要使用Oracle Instant Client v 10.2.0.4。但是我试着安装rpm -ivh oracle-instantclient-sqlplus-10.2.0.4-1.i386.rpm我有错误:

Preparing...                ########################################### [100%]
    file /usr/bin/sqlplus from install of oracle-instantclient-sqlplus-10.2.0.4-1.i386 conflicts with file from package oracle-instantclient12.1-sqlplus-12.1.0.1.0-1.i386

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

您正在尝试使用两个不同版本的Oracle客户端库(10g和12c)。 您可以使用:

  • -i替换为-U(U代表升级)
  • 删除ver。 10首先(rpm -e
  • 如果您坚持使用两个不同的客户端版本,请删除.rpm包。并使用.zip包装。只需将它们解压缩到/opt
  • 即可

答案 1 :(得分:0)

ldd sqlplus

linux-gate.so.1 =>  (0x006bf000)
    libsqlplus.so => /usr/lib/oracle/10.2.0.4/client/lib/libsqlplus.so (0x00110000)
    libclntsh.so.10.1 => /usr/lib/oracle/10.2.0.4/client/lib/libclntsh.so.10.1 (0x006c0000)
    libnnz10.so => /usr/lib/oracle/10.2.0.4/client/lib/libnnz10.so (0x00218000)
    libdl.so.2 => /lib/libdl.so.2 (0x001c4000)
    libm.so.6 => /lib/libm.so.6 (0x001c9000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x0041e000)
    libnsl.so.1 => /lib/libnsl.so.1 (0x00439000)
    libc.so.6 => /lib/libc.so.6 (0x00469000)
    /lib/ld-linux.so.2 (0x001f8000)

和ldd libclntsh.so

ldd: ./libclntsh.so: No such file or directory