首先安装配置时,必须把握一个点,就是版本一致!包括:系统版本,python版本,oracle客户端的版本,cx_Oracle的版本,而后安装配置就容易了!html
若是已经安装Python,查看你安装的Python版本是多少位的:python
固然,你64位的操做系统也是能够安装32位的开发环境。反之则不行!切记!sql
oracle客户端的版本,cx_Oracle的版本,要与Python版本和位数对应:数据库
好比:oracle
Python版本:Python3.4.3 32位;测试
cx_Oracle的版本:cx_Oracle-5.2-11g.win32-py3.4fetch
oracle客户端的版本:instantclient-basic-win32-11.2.0.1.0;spa
这里还有三个注意点:操作系统
版本位数对应,都是32位;htm
cx_Oracle和python版本对应,都是3.4;
cx_Oracle和instantclient版本对应,都是11; 、
再次说明(别嫌我啰嗦,弄明白很重要):好比,个人系统是win7 64位,python版本倒是32位的,因此下载安装的Oracle Client 也是32位 11g的,相应的cx_Oracle 也要是32位11g的,固然也要注意python的版,本python2.X仍是python3.X,也要下相应的版本的。
这一点弄明白以后,咱们就要准备安装了。
下载地址:https://pypi.python.org/pypi/cx_Oracle/5.3 下载低版本cx_Oracle版本
我是下载cx_Oracle-5.3-11g.win32-py3.6.exe,下载后直接双击安装,就ok了。
不建议直接使用pip install cx_Oracle命令安装,由于版本问题容易报错。cx_Oracle 报错:cx_Oracle.DatabaseError: DPI-1050: Oracle Client library must be at version 11.2,这就是cx_Oracle版本过高引发的。
下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
把下载的文件解压,复制oci,oraocci11,oraociei11的3个DLL粘贴到你的PY目录的Libs/site-packages文件夹下面。
python3.4链接oracle数据库测试代码:
import cx_Oracle conn = cx_Oracle.connect('用户名/密码@主机ip地址/orcl') #用本身的实际数据库用户名、密码、主机ip地址 替换便可 curs=conn.cursor() sql='SELECT * FROM 。。。' #sql语句 rr=curs.execute (sql) row=curs.fetchone() print(row[0]) curs.close() conn.close()
配一个ORACLE_HOME的环境变量,指向Instant Client的目录(若是你到这已经能够成功链接orcale数据库了,环境变量这一步不执行也能够,视状况而定):
到本身想要放的路径下,个人是C:\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
而后是配置环境变量:右键计算机——属性——高级系统设置——环境变量——系统变量——新建
变量:ORACLE_HOME 值:Q:\OracleClient
变量:TNS_ADMIN 值:Q:\OracleClient
编辑path用';'隔开加一个 Q:\OracleClient
安装结束,整个安装过程很是简单,也是我本身屡次失败的总结,但愿对你有帮助!
补充一点:
oracle数据库服务端版本若是是64位,你的机子上安装的客户端位数是32仍是64,都不影响使用。
本机上不须要安装oracle服务端。