ITPub博客

首页 > 应用开发 > Python > Error: DPI-1047: Cannot locate a 64-bit Oracle Client library: "问题

Error: DPI-1047: Cannot locate a 64-bit Oracle Client library: "问题

Python 作者:studywell 时间:2020-03-31 13:48:19 0 删除 编辑

参考:

https://blog.csdn.net/zhaoyq008/article/details/94018743


        python 打包后,在别的机器遇上运行,提示报错,报错内容为:

Error: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See for help

    

根本问题:打包时未将oracle dll文件打包进去,导致运行找不到链接库。

    

临时解决办法:

 方法一:

    1、安装oracle 64位客户端

    2、配置环境path,将客户端的目录,比如d:\oracle\product\11.2.0\client_1\bin 配置到path中

    3、前面两步做完,执行报了另一个错 ora-01804 ,将 ORACLE_HOME目录设置为 d:\oracle\product\11.2.0\client_1 后,问题解决。


方法二:

    1、下载轻量级的Oracle客户端: 比如 instantclient-basic-windows.x64-11.2.0.4.0.zip

    2、配置环境变量path:      将客户端的目录,比如 D:\oracle\instantclient_11_2 添加到 path

    3、配置环境变量ORACL_HOME:     将客户端的上一级目录 ,比如 D:\oracle 设置为ORACLE_HOME的值

    4、上面3步做完,执行报错:```nls_lan python Error: 'ascii' codec can't encode characters in position 28-31: ordinal not in range(128),```;   然后添加环境变量NLS_LANG,设置为:AMERICAN_AMERICA.ZHS16GBK,其值是数据库nls_database_parameters中NLS_LANGUAGE,NLS_TERRITORY,NLS_CHARACTERSET分别对应的值;    设置完成后执行成功。


方法三:    linux 解决方法

    1、下载轻量级的oracle客户端并解压安装

    2、配置环境变量LD_LIBRARY_PATH=[oracle客户端安装目录]:$LD_LIBRARY_PATH ,NLS_LANG=[oracle数据库NLS_LANGUAGE_NLS_TERRITORY.NLS_CHARACTERSET] ,并添加到 ~/.bash_profile 中

    3、重新登录系统 或 source ~/.bash_profile 使环境变量生效

    4、重新执行后成功


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29519108/viewspace-2683542/,如需转载,请注明出处,否则将追究法律责任。

上一篇: VCSA6.7 安装失败
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-03-04

  • 博文量
    307
  • 访问量
    450886