在安装python访问ORACLE的驱动时遇到问题总结如下
1安装cx_Oracle(python访问oracle的驱动)报错python version 3.4 required, which was not found in
the registry
下载python软件时,应下载exe文件,运行安装,且安装时要选择当前用户,默认选项
原因
cx_Oracle包在安装时,检测的是路径是HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.4 ,安装程序没有检测到注册表信息的原因,一个可能的原因是python在安装的时候,写的注册表位置和这个路径不一样,比如在安装的时候,选择的是所有用户而不是当前用户,那么注册表就会写到HKEY_LOCAL_MACHINE下
2Unable to acquire Oracle environment handle
以下是环境变量的配置(用的是 oracle的instantclient):
PATH=d:/instantclient
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
TNS_ADMIN=d:/instantclient
解决办法:
第一种:配置好环境变量,像上面那样,不把oracle相关的dll文件放到site-package中在启动 Python 解释器之前需要设置 ORACLE_HOME 和 LD_LIBRARY_PATH
[root@xe
~]# su - oracle
[oracle@xe ~]$ export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
[oracle@xe ~]$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
第二种:拷贝oci.dll, oraociei10.dll, oraocci10.dll到site-package中
这里用的是copy .dll 这三dll哪个都不能缺
http://blog.csdn.net/zhangweiwindow/article/details/6575224