• python使用cx_oracle连接oracle数据库


    http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html---下载instantclient-basic-linux.x64-11.2.0.4.0
    http://sourceforge.net/projects/cx-oracle/files/5.1.2/----下载cx_Oracle-5.1.2.tar.gz
    https://pypi.python.org/pypi/cx_Oracle----下载cx_Oracle-5.1.2.tar.gz
    linux版本号		CentOS release 6.5 (Final)
    python版本号	2.6.6
    oracle版本号		11.2.0.4 x86_64
    
    1、安装oracle客户端和sdk
    # unzip instantclient-basic-linux.x64-11.2.0.4.0.zip
    # cp ~/instantclient_11_2/* /usr/local/oracle_instantclient_11.2.0.4_x86_64/<pre name="code" class="cpp">http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html---下载instantclient-basic-linux.x64-11.2.0.4.0
    http://sourceforge.net/projects/cx-oracle/files/5.1.2/----下载cx_Oracle-5.1.2.tar.gz
    https://pypi.python.org/pypi/cx_Oracle----下载cx_Oracle-5.1.2.tar.gz
    linux版本号		CentOS release 6.5 (Final)
    python版本号	2.6.6
    oracle版本号		11.2.0.4 x86_64
    
    1、安装oracle客户端和sdk
    # unzip instantclient-basic-linux.x64-11.2.0.4.0.zip
    # cp ~/instantclient_11_2/* /usr/local/oracle_instantclient_11.2.0.4_x86_64/
    
    # unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip -d /usr/local/oracle_instantclient_11.2.0.4_x86_64/
    # cp -rf include/* /usr/local/oracle_instantclient_11.2.0.4_x86_64/
    
    2、环境变量设置
    # vi /etc/profile
    export ORACLE_HOME=/usr/local/oracle_instantclient_11.2.0.4_x86_64
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME:/lib:/usr/lib
    
    # source /etc/profile
    
    3、安装cx_oracle
    # tar xvf cx_Oracle-5.1.2.tar.gz 
    # ln -sv /usr/local/oracle_instantclient_11.2.0.4_x86_64/libclntsh.so.11.1 /usr/local/oracle_instantclient_11.2.0.4_x86_64/libclntsh.so
    # python setup.py build
    # python setup.py install
    Installed /usr/lib64/python2.6/site-packages/cx_Oracle-5.1.2-py2.6-linux-x86_64.egg
    Processing dependencies for cx-Oracle==5.1.2
    Finished processing dependencies for cx-Oracle==5.1.2
    
    4、成功安装后进行验证
    >>> import cx_Oracle
    
    
    
    
    问题
    1、 raise DistutilsSetupError("cannot locate an Oracle software " 
    解决:须要设置oracle的环境变量LD_LIBRARY_PATH
    
    2、cx_Oracle.c:10:17: 错误:oci.h:没有那个文件或文件夹
    解决:安装oracle jdk
    
    3、/usr/bin/ld: cannot find -lclntsh
    解决:创建软链接
    ln -sv /usr/local/oracle_instantclient_11.2.0.4_x86_64/libclntsh.so.11.1 /usr/local/oracle_instantclient_11.2.0.4_x86_64/libclntsh.so
    
    4、cx_Oracle.DatabaseError: ORA-00972: identifier is too long和打印的中文字段名为???

    ?

    # export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" ##攻克了一部分问题 # export NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8" ##全然攻克了问题


    
    

  • 相关阅读:
    追求一个人怎么这么难
    基于PHPstream扩展手动实现一个redis客户端
    常见final修饰类
    位运算
    HTTP Status 404
    Hibernate Junit 运行报错:org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment
    根据银行卡号码获取银行卡归属行以及logo图标
    进程间通信IPC(InterProcess Communication)
    脏读、幻读、不可重复读和可重复读
    数据库锁知识总结
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7248226.html
Copyright © 2020-2023  润新知