我正在和clsql做一些练习。我想连接我的oracle服务器,因此我的连接函数是;
(connect '("192.168.2.3" "xe" "username" "password") :database-type :oracle)
当我按回车键时,会显示以下错误消息。
Couldn't load foreign libraries "libclntsh", "oci". (searched *FOREIGN-LIBRARY-SEARCH-PATHS*) [Condition of type SIMPLE-ERROR]
我已经安装了oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
并定义export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client/lib
那么,我还应该做些什么来连接服务器呢?
发布于 2011-06-08 09:20:50
在动态链接到Oracle lib(即在C/C++中)时遇到的一个问题是,在 so名称之后,libclntsh.so共享对象的版本是。因此,您可能需要在同一目录中创建软链接,确保软链接名称仅为libclntsh.so
发布于 2015-11-17 05:53:14
我最近在使用oracle,发现您需要做的就是将libclntsh的路径放到/etc/ld.conf.d/oracle.conf中
我的设置如下( redhat,centos - as root):从oracle下载
oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
install via rpm -ivh oracle*.rpm创建文件/etc/ld.so.conf.d/oracle.conf
/usr/lib/oracle/12.1/client64/lib
然后执行ldconfig
现在因为clsql-oracle不在quicklisp中,所以我下载并解压了clsql-6.6.2,然后
(require "asdf")
(push #P"/opt/jeff/clsql-6.6.2/" asdf:*central-registry*)
(asdf:load-system :clsql-oracle)
(defparameter *some-db* (connect '("127.0.0.1:1521/db1" "SOME_USER_RO" "*******") :database-type :oracle))瞧,它起作用了。
https://stackoverflow.com/questions/3588591
复制相似问题