GOLANG 在 UBUNTU 14.04 上使用 Oracle 数据库
发布时间:2020-12-16 18:52:54 所属栏目:大数据 来源:网络整理
导读:本文参考了以下地址的文章: https://github.com/Centny/Centny/blob/master/Articles/How%20build%20github.com%3amattn%3ago-oci8.md? 一、安装oracle的OCI套件 1、OCI下载链接页面下载(instantclient-basic,instantclient-sdk) http://www.oracle.com/
本文参考了以下地址的文章:
https://github.com/Centny/Centny/blob/master/Articles/How%20build%20github.com%3amattn%3ago-oci8.md?
一、安装oracle的OCI套件
1、OCI下载链接页面下载(instantclient-basic,instantclient-sdk)
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 2、解压缩到同一个目录下,比如:instantclient_12_1 3、root权限移动文件夹到目录 /usr/lib 下 2、root权限执行以下命
##? 其实直接cp拷贝过去也是一样的
ln /usr/lib/instantclient_12_1/libclntsh.so.12.1 /usr/lib/libclntsh.so
ln /usr/lib/instantclient_12_1/libocci.so.12.1 /usr/lib/libocci.so ln /usr/lib/instantclient_12_1/libociei.so /usr/lib/libociei.so
ln /usr/lib/instantclient_12_1/libnnz12.so /usr/lib/libnnz12.so
##以下两条是为了运行sqlplus命令
ln /usr/lib/instantclient_12_1/?libsqlplusic.so/usr/lib/libsqlplusic.so?
ln /usr/lib/instantclient_12_1/libsqlplus.so/usr/lib/libsqlplus.so?
##? 把OCI路径加入系统加载动态库的路径中,并重新加载一次
? ?echo /opt/oracle/instantclient >> /etc/ld.so.conf ?ldconfig 3、安装pkg-config 4、在 /usr/lib/pkgconfig 目录下创建文件 oci8.pc,内容如下: prefix=<replace instantclient path> // 路径改为/usr/lib/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}
5、直接运行步骤6会报libaio不存在的错误,安装libaio库
sudo apt-get install libaio1
6、安装go-oci8
go get github.com/mattn/go-oci8?
7、.bashrc 文件中添加系统变量
# OCI安装目录?
export ORACLE_HOME=/usr/lib/instantclient_12_1
#?tnsnames.ora 文件地址?
?export TNS_ADMIN=$ORACLE_HOME/network/admin
# OCI安装目录加入动态库加载路径?
?export LD_LIBRARY_PATH=$ORACLE_HOME
#oci8.pc文件所在路径
export PKG_CONFIG_PATH=/usr/lib/pkgconfig
8、tnsnames.ora 文件的内容
?
二、使用github.com/mattn/go-oci8操作Oracle数据库?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |