目录
解决方法:
安装与配置过程:
1、选择下载的文件用途
2、将下载后的rpm文件上传至centos系统后执行安装命令 rpm -ivh *.rpm
3、安装好rpm包之后,需要配置oracle监听文件
4、在系统环境中配置oracle client的相关变量
5、用以下命令使环境变量生效:
6、使用python链接库测试oracle client是否配置成功:
问题:cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "/usr/python/oracleClient/instantclient_11_2/lib/libclntsh.so: cannot open shared object file: No such file or directory". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
解决方法:
安装oracle client
安装与配置过程:
1、选择下载的文件用途
安装oracle client
1、选择下载的文件用途
Oracle Instant Client Downloads
下载client需要的文件:
官方网站: Instant Client for Linux x86-64 (64-bit) (oracle.com)
已上传【可直接下载】:oracleclientforcentos6.rar-Linux文档类资源-CSDN文库
2、将下载后的rpm文件上传至centos系统后执行安装命令 rpm -ivh *.rpm
如果出现异常:
[root@1112 oracleClient]# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
error: Failed dependencies:
libaio is needed by oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64
需要先安装libaio: yum install libaio*
如果出现以下问题:
Setting up Install Process
No package libaio* available.
Error: Nothing to do
说明yum源出现问题需要更换yum源:
更换之前先备份原来的yum源文件:
mv /etc/yum.repos.d/Centos-base.repo /etc/yum.repos.d/Centos-base.repo.1025.bkp
更换为阿里云的yum源:
wget -O /etc/yum.repos.d/CentOS-base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum clean all
如果出现一下问题:
Existing lock /var/run/yum.pid: another copy is running as pid 17901.
说明yum被占用,需要先关闭yum进程,如果不知道被哪些进程占用,可以使用以下命令查询:
ps aux|grep yum
然后根据进程id 【pid】kill pid 关闭使用中的 yum进程
或者使用以下命令关闭:
rm -f /var/run/yum.pid
关闭之后重试以下命令:
yum clean all
yum makecache
以上是使用yum 安装libaio失败的解决方法:更新过yum源之后,重新安装yum install libaio*
如果出现异常:
[root@1112 oracleClient]# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
error: Failed dependencies:
libaio is needed by oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64
需要先安装libaio: yum install libaio*
如果出现以下问题:
Setting up Install Process
No package libaio* available.
Error: Nothing to do
说明yum源出现问题需要更换yum源:
更换之前先备份原来的yum源文件:
mv /etc/yum.repos.d/Centos-base.repo /etc/yum.repos.d/Centos-base.repo.1025.bkp
更换为阿里云的yum源:
wget -O /etc/yum.repos.d/CentOS-base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum clean all
如果出现一下问题:
Existing lock /var/run/yum.pid: another copy is running as pid 17901.
说明yum被占用,需要先关闭yum进程,如果不知道被哪些进程占用,可以使用以下命令查询:
ps aux|grep yum
然后根据进程id 【pid】kill pid 关闭使用中的 yum进程
或者使用以下命令关闭:
rm -f /var/run/yum.pid
关闭之后重试以下命令:
yum clean all
yum makecache
以上是使用yum 安装libaio失败的解决方法:更新过yum源之后,重新安装yum install libaio*
安装libaio之后,再重新安装oracle client的rpm包:rpm -ivh *.rpm
3、安装好rpm包之后,需要配置oracle监听文件
mkdir -p /usr/lib/oracle/11.2/client64/network/admin
cd /usr/lib/oracle/11.2/client64/network/admin/
vi tnsnames.ora
RCL =
(DEscriptION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
4、在系统环境中配置oracle client的相关变量
vi ~/.bash_profile
export ORACLE_HOME=/usr/lib/oracle/11.2/client64 export TNS_ADMIN=$ORACLE_HOME/network/admin export NLS_LANG='simplified chinese_china'.ZHS16GBK export LD_LIBRARY_PATH=$ORACLE_HOME/lib export PATH=$ORACLE_HOME/bin:$PATH
5、用以下命令使环境变量生效:
source ~/.bash_profile
查询环境变量是否起作用:
[root@1112 admin]# echo $ORACLE_HOME
/usr/lib/oracle/11.2/client64
6、使用python链接库测试oracle client是否配置成功:
>>> import cx_Oracle
>>> conn = cx_Oracle.connect('user/pwd@ip:1521/orcl')
另外linux常用查询命令:
查询某个服务启动信息:ps -aux|grep yum
[root@1112 admin]# ps -aux|grep yum
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 17901 0.0 0.1 316460 21308 pts/1 T 15:18 0:00 /usr/bin/python /usr/bin/yum search libaio
root 18062 0.0 0.0 103320 892 pts/3 S+ 18:16 0:00 grep yum
关闭服务:
kill 17901
另外linux常用查询命令:
查询某个服务启动信息:ps -aux|grep yum
[root@1112 admin]# ps -aux|grep yum
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 17901 0.0 0.1 316460 21308 pts/1 T 15:18 0:00 /usr/bin/python /usr/bin/yum search libaio
root 18062 0.0 0.0 103320 892 pts/3 S+ 18:16 0:00 grep yum
关闭服务:
kill 17901



