1. 查看需要连接oracle的版本
SELECT * FROM V$VERSION

image.png
2. 下载对应的客户端
- python连接远程oracle只需要安装
instantclient-basic-linux.x64-11.2.0.4.0.zip就够了
链接: https://pan.baidu.com/s/1B_lLakzULsJ_icgBeMmM1Q 提取码: ryc8 - 解压到任意目录, 例如
/usr/local/oracle/
3. 配置
- 安装
libaio1
apt install libaio1
# 或者
yum install libaio1
- 设置软链接
ln -s libclntsh.so.11.1 libclntsh.so
- 环境变量
vi /etc/profile
增加内容
export LD_LIBRARY_PATH=/usr/local/oracle/instantclient_11_2:$LD_LIBRARY_PATH
export PATH=$PATH:/usr/local/oracle/instantclient_11_2
- 刷新
source /etc/profile
4. 安装 cx_Oracle
pip3 install cx_Oracle -i https://mirrors.aliyun.com/pypi/simple/
5. Crontab配置
方法1: 在crontab文件配置Oracle环境
contab -e
# 添加
export LD_LIBRARY_PATH=/usr/local/oracle/instantclient_11_2:$LD_LIBRARY_PATH
export PATH=$PATH:/usr/local/oracle/instantclient_11_2
* * * * python3 main.py
方法2: crontab里调用 sh 脚本, 在脚本里配置Oracle环境
export LD_LIBRARY_PATH=/usr/local/oracle/instantclient_11_2:$LD_LIBRARY_PATH
export PATH=$PATH:/usr/local/oracle/instantclient_11_2
python3 main.py
5. 报错处理
- 如果报错
Cannot locate a 64-bit Oracle Client library: "libnsl.so.1: cannot open shared object file- 安装
yum install libnsl
- 安装
- Done