Golang的第三包地址:https://github.com/wendal/go-oci8
###一、下载oci和oci sdk
地址:http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html
下载instantclient-basic和instantclient-sdk
两个都解压后,将instantclient-sdk解压出的sdk包放到instantclient-basic出来的目录中
最后的目录结构如下:
再次执行如下
mv -rf instantclient_12_1 /usr/local #移动到该目录
cd /usr/local/instantclient_12_1
mv libclntsh.dylib.* libclntsh.dylib
ln libclntsh.dylib /usr/lib/libclntsh.dylib
ln libocci.dylib.* /usr/lib/libocci.dylib.*
ln libociei.dylib /usr/lib/libociei.dylib
ln libnnz11.dylib /usr/lib/libnnz11.dylib
如果没有权限操作/usr目录,可以参考 http://www.macworld.com/article/2986118/security/how-to-modify-system-integrity-protection-in-el-capitan.html
设置环境变量
export PKG_CONFIG_PATH="/usr/lib/pkgconfig"
export DYLD_LIBRARY_PATH=/usr/local/instantclient_12_1
###二、修改oci8.pc文件
vi /usr/lib/pkgconfig/oci8.pc #如果不存在就创建
填入以下内容
# Package Information for pkg-config
prefix=/usr/local/instantclient_12_1/
libdir=${prefix}
includedir=${prefix}/sdk/include/
Name: OCI
Description: Oracle database engine
Version: 12.1
Libs: -L${libdir} -lclntsh
Libs.private:
Cflags: -I${includedir}
###三、配置oracel客户端配置 创建一个tnsnames.ora(可以放到任意目录)
同时向该文件写入以下内容:
MPM =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.111)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mpm)
)
)
#SERVICE_NAME 为库名
配置环境变量
export TNS_ADMIN="/Users/tian/java/oracle" #tnsnames.ora文件所在的目录
相关连接
http://www.cnblogs.com/ghj1976/p/3437250.html
http://blog.csdn.net/elonlink/article/details/52635523
https://stackoverflow.com/questions/23970158/ora-12170-tnsconnect-timeout-occurred