Differences between revisions 1 and 2
Revision 1 as of 2008-11-13 02:09:17
Size: 1893
Editor: ZoomQuiet
Comment:
Revision 2 as of 2009-11-28 14:44:10
Size: 1826
Editor: Elias
Comment: 删除对PageComment2组件的引用
Deletions are marked like this. Additions are marked like this.
Line 53: Line 53:
||<^>[[PageComment2]]||<^>[:/PageCommentData:PageCommentData]''||

TableOfContents

Include(ZPyUGnav)

Py接Oracle 成功体验

程磊 <[email protected]>
reply-to        [email protected]
to      [email protected]
date    Thu, Nov 13, 2008 at 10:03
subject [CPyUG:71218] gentoo cx_python连oracle

cx_python必须用oracle客户端。oracle有一个instance client,是一个thin client。相对于普通的客户端小了不少。我最讨厌一个客户端好几百M了。安装这 个,比较小巧方便。

下载。里面的basic是必须下载的。其他的想sqlplus的可以选装。

  • 下载oracle-instanceclient-basic到一个目录下,比如是instanceclient。
  • 然后配置ORACLE_HOME到这个目录同时要添加这个目录到LD_LIBRARY_PATH。
  • 然后下载cx_ORACLED的源码,python setup.py build或install,就行了。

要注意的有几点:

1.必须保证client所需要的包都有,
 我下了sqlplus的文件,然后执行,发现少了libaio,装上,sqlplus正常工作,那么 cx_ORACLE也可以正常工作了。
2.必须保证ORACLE_HOME设置正确和LD_LIBRARY_PATH添加client目录。
3.instanceclient里面有个libclntsh.so.11.1的包,
 oracle在这个lib后面加了版本号,但是cx_ORACLE只认libclntsh.so,
 所有要cp一份在client目录下,否则编译会报cannot find -lclntsh

测试:

import cx_Oracle
conn = cx_Oracle.connect("***/***@//192.168.10.176:1521/orcl")
cursor=conn.cursor()

ok成功了。


反馈

创建 by -- ZoomQuiet [DateTime(2008-11-13T02:09:17Z)]

MiscItems/2008-11-13 (last edited 2009-12-25 07:13:04 by localhost)