安装cx_Oracle 6
首先声明,本文是在Linux 环境下进行安装。不涉及Windows 版安装。
一、 了解cx_Oracle 安装要求
要python 通过cx_Oracle 6 操作Oracle 数据库,以下几个条件是必须的:
- Python 2.7 或者3.4 及更高版本。
- Oracle 客户端库文件. 我们可以通过安装Oracle 客户端或者oracle 完整版软件来获得。Oracle 的版本最低要求是11.2 (目前Oracle 最高版本是12.2)当前时间2018-02-04。
- Oracle 服务端。
这里我们需要注意的是不同版本的Oracle 客户端(包含完整安装Oracle 软件,以下统称Oracle 客户端,为什么有这种称呼的区别是因为我们可以通过下载完整版Oracle database 或者下载oracle client 。) 支持的Oracle数据库版本是不一样的:
| Oracle 客户端版本 | 9.2 | 10.1 | 10.2 | 11.1 | 11.2 | 12.1 | 12.2 |
| 11.2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| 12.1 | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| 12.2 | ✓ | ✓ | ✓ |
所以,客户端版本并不是越新越好。要先确定好Oracle 数据库的版本。选择支持该版本数据库的客户端。不然安装好后,python 无法连接数据库,会泪奔的。
二、 安装cx_Oracle
2.1 PyPI 方式安装
通过 PyPI 安装 的命令非常简单,但是要求连网。如果网络不通,是无法通过这种方式进行安装的。
# python
python3 -m pip install cx_Oracle --upgrade
# python2
python -m pip install cx_Oracle --upgrade
安装示例如下:

2.2 源码安装
源码安装其实也不麻烦。只不过所花费的时间非常长,要相当有耐心。
首先打开 PyPI 找到适合自己的版本。并下载 ,如下图中红框中的连接。

将下载好的文件cx_Oracle-6.1.tar.gz 上传至Linux 服务器(上传方式很多,ftp 命令,带ftp 功能的软件比如secureCRT,xshell , ftp 软件filezilla sz/rz 命令等,不一一详细说明使用方法)。
解压:
tar -xzvf ./cx_Oracle-6.1.tar.gz
解压后,得到一个名为 cx_Oracle-6.1 的路径 ,可以大概了解下解压后的内容:

这里要注意下,解压完成后,该路径里的文件不一定有执行权限,为了方便后面的安装操作,最好执行下如下命令:
chmod -R 777 ./cx_Oracle-6.1
我们进入这个路径后,即可执行安装命令进行安装:
# python3
python3 setup.py build install
#python
python setup.py build install
后面,你可以去喝个咖啡,泡个妞儿~再回来
三、 配置环境变量
安装完cx_Oracle ,还需要配置下环境变量,使python 能正常去调用oracle 库文件,这样才能使cx_Oracle 在python 的调用下正常连接Oracle 数据库
windows 里需要配置PATH 环境变量,配置的方法这里不再粘贴图例,只写出如何找到环境变量配置的页面: 屏幕左下角“开始”-->"计算机”--> “属性”--> "高级系统设置“--> "环境变量”。相信难不到你的。
Linux 操作系统里,需要在操作用户下的.bash_profile/.bashrc/.kshrc 等其中一个文件 ,一般配置.bash_profile ,在里面添加LD_LIBRARY_PATH 或者在该环境变量中添加Oracle 客户端库文件路径 。比如我测试环境中的配置:

安装cx_Oracle 6的更多相关文章
- 使用pip安装 cx_Oracle 模块
1. 系统环境,linux, python3.5, pip以下命令的执行均使用root用户. 2. 执行 pip install cx_Oracle出错,提示不能定位Oracle的安装.出现该问题的原 ...
- Windows 环境下于虚拟环境安装源码安装 cx_oracle
安装前提条件: (1).安装 instantclient-basic-nt (2).安装 instantclient-sdk-nt (3).安装 Microsoft Visual C++ Compil ...
- Windows 环境下于虚拟环境中源码安装 cx_oracle
安装前提条件: (1).安装 instantclient-basic-nt (2).安装 instantclient-sdk-nt (3).安装 Microsoft Visual C++ Compil ...
- python 安装cx_Oracle模块, MySQLdb模块, Tornado
一,想访问远程Oracle数据库,本地又不想安装几百兆的Oracle Client(也木有root权限),安装python的cx_Oralce 模块需要依赖Oracle Instant Client ...
- Python安装cx_Oracle与操作数据测试小结
这里简单总结一下Python操作Oracle数据库这方面的相关知识.只是简单的整理一下之前的实验和笔记.这里的测试服务器为CentOS Linux release 7.5. 个人实验.测试.采集数据的 ...
- Python 安装cx_Oracle模块
1.Python安装cx_Oracle模块需要安装Oracle,并在环境变量中添加Oracle的路径. 2.没有安装Oracle的需要下载一个oci.dll的文件,并把文件的路径添加到path中. 如 ...
- 安装 cx_Oracle
1.下载 oracle client instant 和 sdk, 全部解压到 /opt/instantclient_11_2/ http://www.oracle.com/technetwor ...
- ubuntu 下安装 cx_Oracle库
1.下载3个zip包: 下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.htm ...
- 安装cx_Oracle 遇到的杂项问题
1. 解决方法: 将xc用户添加进sudousers 2.安装VMware Tools 更新 http://pubs.vmware.com/vsphere-50/index.jsp?topic=%2F ...
随机推荐
- Django学习手册 - ORM 数据创建/表操作 汇总
ORM 查询的数据类型: QuerySet与惰性机制(可以看作是一个列表) 所谓惰性机制:表名.objects.all()或者.filter()等都只是返回了一个QuerySet(查询结果集对象),它 ...
- php编程 之 php基础一
1,语法 PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器.PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码 比如下面这个:这是一个简单的 PHP 文件实例,它可以向浏览器 ...
- 【转载】奇异值分解(SVD)计算过程示例
原文链接:奇异值分解(SVD)的计算方法 奇异值分解是线性代数中一种重要的矩阵分解方法,这篇文章通过一个具体的例子来说明如何对一个矩阵A进行奇异值分解. 首先,对于一个m*n的矩阵,如果存在正交矩阵U ...
- Switch 中参数的范围探讨
switch 语句必须遵循下面的规则: switch 语句中的 expression 必须是一个整型或枚举类型,或者是一个 class 类型,其中 class 有一个单一的转换函数将其转换为整型或枚举 ...
- 64位进程调用32位dll的解决方法 / 程序64位化带来的问题和思考
最近做在Windows XP X64,VS2005环境下做32位程序编译为64位程序的工作,遇到了一些64位编程中可能遇到的问题:如内联汇编(解决方法改为C/C++代码),long类型的变化,最关键的 ...
- ubuntu 安装source insight3.5
版本 ubuntu 16.04 在linux下安装 windows下程序,需要安装wine, wine 是 "“Wine Is Not an Emulator" 缩写. 1) 安装 ...
- openwrt页面显示问题修改
页面显示错误如下: 在不应该的位置显示了这个,查看配置文件: config igmpproxy option quickleave '1' config phyint o ...
- MySQL MyISAM引擎转换为InnoDB操作记录
进入mysql命令行模式: # mysql -uroot -ppwd 1.查看mysql提供什么存储引擎: mysql> show engines; 2.查看mysql当前提供的默认存储引擎: ...
- python-迭代器、生成器、内置函数及面向过程编程
一.迭代器 迭代器是迭代取值的工具,迭代是一个重复的过程,每一次重复都是基于上一次的结果而来的. 为什么要用迭代器呢? 1.可以不依赖索引取值 2.同一时刻在内存中只有一个值,不会过多的占用内存 如何 ...
- 【进阶1-5期】JavaScript深入之4类常见内存泄漏及如何避免(转)
这是我在公众号(高级前端进阶)看到的文章,现在做笔记 https://mp.weixin.qq.com/s/RZ8Lpkyk8lz6z5H8Q8SiEQ 垃圾回收算法 常用垃圾回收算法叫做**标记清除 ...