通过python连接oracle数据库,在Linux服务器运行时,缺少cx_Oracle模块,则需要在linux下安装对应的依赖,需要用到的依赖如下:
①oracle客户端
②cx_Oralce
查看python版本,确定需要使用的安装包版本
需要下载的依赖包:
cx_Oracle-8.2.1-cp36-cp36m-manylinux1_x86_64.whl
instantclient-basic-linux.x64-12.2.0.1.0.zip
instantclient-sdk-linux.x64-12.2.0.1.0.zip
在/opt目录下新建oracle目录,把下载的三个文件放入linux的/opt/oracle目录下
cd /opt
mkdir oracle
解压zip包,会在oracle目录下生成一个文件:instantclient_12_2
unzip instantclient-basic-linux.x64-12.2.0.1.0.zip
unzip instantclient-sdk-linux.x64-12.2.0.1.0.zip
配置环境变量
vim /etc/profile
末尾添加以下内容
export ORACLE_HOME=/opt/oracle/instantclient_12_2
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
执行环境变量生效
source /etc/profile
创建软连接(即快捷方式)
ln -s libclntsh.so.12.1 libclntsh.so
/opt/oracle目录下执行以下命令:
pip install cx_Oracle-8.2.1-cp36-cp36m-manylinux1_x86_64.whl
执行以下命令,无报错,即是安装成功
python3 -c "import cx_Oracle
进一步测试,运行查询命令
import cx_Oracle
conn = cx_Oracle.connect('oracle','oracle','192.168.110.23:1521/ORCL')
cursor = conn.cursor()
print('连接数据库成功!')
sql = "select * from student"
all = cursor.execute(sql)
print(all.fetchall())