是否有人在AIX上成功地将当前(2.1.7)版本的ruby-oci8用于Oracle?
我可以运行我的ruby-oci8测试脚本,并让它在Linux的TNS和Windows的TNS上工作,而不是AIX。
但是,这不是Oracle即时客户端问题,我可以从我的机器执行命令行sqlplus连接到Oracle (TNS for AIX)服务器,并且工作正常。但是,当我将它包装在一个ruby脚本中(使用ruby1.8.7)时,它会失败,因为:
oci8.c:513:in oci8lib.so: ORA-12537: TNS:connection closed (OCIError)
from /usr/lib64/ruby/gems/1.8/gems/ruby-oci8-2.1.7/lib/oci8/oci8.rb:148:in initialize' from app/controllers/testdb.rb:32:innew'
from app/controllers/testdb.rb:32在这里,我没有做任何聪明的事情,只是创建了这样一个新的连接:
conn = OCI8.new(username, password)任何有关这方面的信息都会很好,我还没有尝试过包的嗅探-.
-John
发布于 2015-01-19 17:02:11
我最终做到了这一点,简单地说,我成功地使用了完整的连接字符串,即: OCI8.new("user/password@(description=(address=(protocol=tcp)(host=host.uab.edu)(port=1521))(connect_data=(sid=somesid)))")。
令人困惑的是,API中没有提到这种格式,而且我不得不使用sid= of service_name=。
https://stackoverflow.com/questions/27892065
复制相似问题