安装 Linux软件包 :
sudo apt-get install libaio-dev unzip
转到 Oracle网站 下载 适用于Linux 64位 的 即时客户端 基本 和SDK 。
下载 您已创建 的Oracle 文件夹 中 的 文件 , 并将它们解压缩 :
cd /opt/oracle unzip oracle-basic-11.zip unzip oracle-sdk-11.zip cd instantclient_11_2/ sudo ln -s libclntsh.so.11.1 libclntsh.so
创建 Oracle即时客户端 系统变量
export LD_LIBRARY_PATH=/opt/oracle/instantclient_11_2
然后 ,安装 ruby - oci8 :
sudo env LD_LIBRARY_PATH=/opt/oracle/instantclient_11_2 /usr/bin/gem install ruby-oci8
测试 连接到 数据库 ,创建 一个 Ruby文件 例如 sql.rb , 并复制 / 粘贴以下代码 :
require 'rubygems'
require 'oci8'
tnsnames = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = host_name_or_ip)(PORT = 1521)) (CONNECT_DATA = (SID = SID)))'
conn = OCI8.new('user', 'password', tnsnames)
cursor = conn.exec('SELECT sysdate FROM dual')
while r = cursor.fetch()
puts r.join(',')
end
cursor.close
conn.logoff
并运行它 :
ruby sql.rb
常见错误信息:
原因: require 'oci8' 前面需加上一行:
require ‘rubygems’
或创建 一个 系统变量 ,它会自动 使用RubyGems :
RUBYOPT=”rubygems”
export RUBYOPT
原因:没有 配置 LD_LIBRARY_PATH变量 是 。