时间:2021-07-01 10:21:17 帮助过:14人阅读
软件包都下载完后,我们开始来安装。
1、Oracle_client端安装:
- <span style="color: #008000">#</span><span style="color: #008000"> rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-jdbc-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm</span><span style="color: #008000">
- #</span><span style="color: #008000"> echo /usr/lib/oracle/11.2/client64/lib/ >> /etc/ld.so.conf</span><span style="color: #008000">
- #</span><span style="color: #008000"> ldconfig</span>
如果不进行ldconfig配置,在运行cx_Oracle时会报以下错误:
- libclntsh.so.11.1: cannot open shared object file: No such file <span style="color: #0000ff">or</span> directory
2、设置相应用户的环境变量:
在这里需要说明下,你使用哪个帐户装cx_Oracle就需要配置哪个帐户的环境变量,以下已root帐户为例;
如果不配置环境变量、或环境变量配置不正确,在安装cx_Oracle时,会报各种错误,比如说:
- oci.h: No such file <span style="color: #0000ff">or</span><span style="color: #000000"> directory
- </span><span style="color: #008000">#</span><span style="color: #008000">vi ~/.bashrc</span>
- export TNS_ADMIN=<span style="color: #800000">"</span><span style="color: #800000">/usr/lib/oracle</span><span style="color: #800000">"</span><span style="color: #000000">
- export ORACLE_HOME</span>=<span style="color: #800000">"</span><span style="color: #800000">/usr/lib/oracle/11.2/client64</span><span style="color: #800000">"</span><span style="color: #000000">
- export LD_LIBRARY_PATH</span>=<span style="color: #800000">"</span><span style="color: #800000">${LD_LIBRARY_PATH}:${ORACLE_HOME}/lib</span><span style="color: #800000">"</span><span style="color: #000000">
- export PATH</span>=<span style="color: #800000">"</span><span style="color: #800000">${PATH}:${ORACLE_HOME}</span><span style="color: #800000">"</span>
- <span style="color: #008000">#</span><span style="color: #008000">source ~/.bashrc</span>
3、源码安装
- <span style="color: #008000">#</span><span style="color: #008000">tar -zxvf cx_Oracle-5.1.2.tar.gz</span><span style="color: #008000">
- #</span><span style="color: #008000">cd cx_Oracle-5.1.2</span><span style="color: #008000">
- #</span><span style="color: #008000">python setup.py install</span>
4、安装成功后相应检查
- [root@HAProxy01 Scripts]<span style="color: #008000">#</span><span style="color: #008000"> python</span>
- Python 3.3.0 (default, Sep 14 2017, 14:53:20<span style="color: #000000">)
- [GCC </span>4.8.5 20150623 (Red Hat 4.8.5-11<span style="color: #000000">)] on linux
- Type </span><span style="color: #800000">"</span><span style="color: #800000">help</span><span style="color: #800000">"</span>, <span style="color: #800000">"</span><span style="color: #800000">copyright</span><span style="color: #800000">"</span>, <span style="color: #800000">"</span><span style="color: #800000">credits</span><span style="color: #800000">"</span> <span style="color: #0000ff">or</span> <span style="color: #800000">"</span><span style="color: #800000">license</span><span style="color: #800000">"</span> <span style="color: #0000ff">for</span><span style="color: #000000"> more information.
- </span>>>> <span style="color: #0000ff">import</span><span style="color: #000000"> cx_Oracle
- </span>>>>
- <span style="color: #008000">#</span><span style="color: #008000">!/usr/bin/python </span><span style="color: #008000">
- #</span><span style="color: #008000"> -*- coding: UTF-8 -*- </span>
- <span style="color: #0000ff">import</span><span style="color: #000000"> cx_Oracle as db
- </span><span style="color: #0000ff">import</span><span style="color: #000000"> os
- os.environ[</span><span style="color: #800000">‘</span><span style="color: #800000">NLS_LANG</span><span style="color: #800000">‘</span>] = <span style="color: #800000">‘</span><span style="color: #800000">SIMPLIFIED CHINESE_CHINA.UTF8</span><span style="color: #800000">‘</span>
- <span style="color: #0000ff">def</span><span style="color: #000000"> queryOracle(sql):
- username </span>= <span style="color: #800000">"</span><span style="color: #800000">US_ORDER</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">用户名</span>
- passwd = <span style="color: #800000">"</span><span style="color: #800000">******</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">用户密码</span>
- host = <span style="color: #800000">"</span><span style="color: #800000">192.168.1.203</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">服务器IP</span>
- port = <span style="color: #800000">"</span><span style="color: #800000">1521</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">oracle端口</span>
- sid = <span style="color: #800000">"</span><span style="color: #800000">ORCL</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">oracle的</span>
- dsn =<span style="color: #000000"> db.makedsn(host, port, sid)
- con </span>=<span style="color: #000000"> db.connect(username, passwd, dsn)
- cur </span>=<span style="color: #000000"> con.cursor()
- cur.execute(sql)
- result </span>=<span style="color: #000000"> cur.fetchall()
- cur.close()
- con.close()
- </span><span style="color: #0000ff">return</span><span style="color: #000000"> result
- </span><span style="color: #0000ff">if</span> <span style="color: #800080">__name__</span>==<span style="color: #800000">"</span><span style="color: #800000">__main__</span><span style="color: #800000">"</span><span style="color: #000000">:
- sql </span>= <span style="color: #800000">"</span><span style="color: #800000">select sysdate from dual</span><span style="color: #800000">"</span> <span style="color: #008000">#</span><span style="color: #008000">需要执行的SQL</span>
- result =<span style="color: #000000"> queryOracle(sql)
- </span><span style="color: #0000ff">print</span>(result)
执行结果:
- [root@HAProxy01 Scripts]<span style="color: #008000">#</span><span style="color: #008000"> ./check_oracle_tables.py</span>
- [(datetime.datetime(2017, 9, 15, 12, 1, 51),)]
Python源码安装cx_Oracle
标签:2.0 安装 select nes cx_oracle open info apr set