内容简介:Ubuntu下Python通过SQLAlchemy库访问Oracle数据库
SQLAlchemy并不是数据库驱动,Python访问Oracle数据的驱动是cx_Oracle,但是这个驱动依赖于Oracle instant client。所以 python 如果想通过SQLAlchemy库访问Oracle数据库,那么需要先安装Oracle instant client、再安装cx_Oracle、最后安装SQLAlchemy。
搞了一圈下来,发现这个过程比较繁琐,现在的资料有些老旧,写篇文档和大家分享下。
安装Oracle instant client
去Oracle官网下载安装包
http://www.oracle.com/technet...
我看的时候已经是版本 12.1.0.2.0 ,同一个版本下有很多包,支持cx_Oracle需要下载下面两个包
oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
简称basic、devel包
basic包含有所有的oracle client lib/bin 文件
devel包含了oracle client 外部接口的头文件
安装
Oracle官方只提供了RPM包,我的操作系统是Ubuntu,需要安装一个alien进行转换。
sudo install alien 就可以完成安装
用alien 将 RPM包转换成DEB包,
sudo alien -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm sudo alien -i oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
然后安装deb包
sudo dpkg -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.deb sudo dpkg -i oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.deb
basic包安装成功后,在/usr/lib/oracle/12.1/client64/目录拷贝了lib、bin库,devel包安装后会/usr/lib/oracle/12.1/client64/目录下拷贝include头文件。
但是,我在用alien转devel RPM包时失败了,后来我就把RPM包解压,发现devel RPM包里面就是一些include文件,把这些文件拷贝到/usr/lib/oracle/12.1/client64/include目录,也能正常工作。
安装包的作用是在指定目录下存放bin、lib、include头文件这些东西,如果安装不了,可以自己解压执行。
设置环境变量
设置环境变量的目的是为了让其它程序能找到安装的Oracle库
$ export ORACLE_HOME=/usr/lib/oracle/11.2/client64 $ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
链接oracle库到系统目录
在 /etc/ld.so.conf.d 目录下创建 oracle.conf文件,在文件里面指定oracle库的路径/usr/lib/oracle/11.2/client64/lib
执行链接配置
$ sudo ldconfig
安装cx_Oracle
安装libaio包,libaio是 Linux 下的一个异步非阻塞接口,它提供了以异步非阻塞方式来读写文件的方式,读写效率比较高,oracle SQLPlus库依赖它。
sudo apt-get install libaio1
所有准备工作完成后,执行包安装命令就可以成功安装cx_Oracle了
sudo apt-get install cx_Oracle
如果前期的准备工作没做好,会报各种安装失败,大家可以对照安装步骤,比对前面的操作是否正确。
安装sqlalchemy
最后使用 sudo apt-get install sqlalchemy 就可以完成安装了
本文永久更新链接地址 : http://www.linuxidc.com/Linux/2018-01/150670.htm
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 面试题:如何通过调优攻破 MySQL 数据库性能瓶颈?
- Java之JDBC 通过加载properties配置文件连接数据库
- 通过Windows批处理命令执行SQL Server数据库备份
- 通过结合使用 SPSS 与数据库仓库连接开展预测性分析
- 真会玩!竟然可以这样用IDEA通过数据库生成lombok版的POJO...
- 美众议院通过一套要求白宫创建一个APT数据库的法案
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
京东平台运营攻略(全彩)
京东商学院 / 电子工业出版社 / 2015-5 / 69.00元
2014 年年末,京东POP 开放平台的入驻商家已超过6 万,京东平台被广泛关注和认可的同时,在电商江湖中仍颇具神秘色彩。面对碎片化的信息,京东的店铺经营者及希望入驻京东的准商家们,对于在京东如何利用丰富的各类平台资源,搭建并运营京东店铺,一直很难找到全面而系统的资料。 《京东平台运营攻略(全彩)》由京东官方出品,动员了京东内部涉及第三方店铺业务线的众多部门,由多位业务精英参与撰写,保证了内......一起来看看 《京东平台运营攻略(全彩)》 这本书的介绍吧!
随机密码生成器
多种字符组合密码
Base64 编码/解码
Base64 编码/解码