无法在Jupyter Notebook中运行ibm_db

时间:2017-06-22 16:19:56

标签: db2 jupyter-notebook

我正在尝试在jupyter笔记本中运行ibm_db。当我运行ibm_db时,我得到以下错误。

ImportError Traceback(最近一次调用最后一次)  in() ----> 1导入ibm_db

ImportError:dlopen(/Users/myName/anaconda/envs/householding/lib/python3.6/site-packages/ibm_db.cpython-36m-darwin.so,2):未加载库:libdb2.dylib   参考自:/Users/myName/anaconda/envs/householding/lib/python3.6/site-packages/ibm_db.cpython-36m-darwin.so   原因:未找到图像

当我运行os.getcwd()时,我得到' / Users / myName'

我认为正在发生的事情是因为我的当前目录是从dlopen正在寻找的路径开始时的水平,它失败了。我已经做了一些环顾四周,但找不到改变dlopen看的方法

3 个答案:

答案 0 :(得分:1)

您必须实际更新环境变量

DYLD_LIBRARY_PATH 包括 /ibm_db-2.0.8-py3.6-macosx-10.6-intel.egg/clidriver/lib

如果你在python3.6上安装了ibm_db-2.0.8, 在终端写

export DYLD_LIBRARY_PATH=/Users/myName/anaconda/envs/householding/lib/python3.6/site-packages/ibm_db-2.0.8-py3.6-macosx-10.6-intel.egg/clidriver/lib

在此之后它应该像魅力一样。 如需参考此结帐:Issues with MAC OS X

答案 1 :(得分:0)

我遇到了同样的错误,发现installDSDriver脚本在/ Applications / dsdriver / db2profile上创建了一个文件,说明如下:

# NAME:     db2profile
#
# FUNCTION: This script sets up a default database environment for
#           Bourne shell or Korn shell users.
#
#           This file is tuned for IBM Data Server Driver Package only.
#
# USAGE:    . db2profile
#           This script can either be invoked directly as above or
#           it can be added to the user's .profile file so that the
#           database environment is established during login.
#

所以我只是在〜/ .bash_profile上添加了以下行:

source /Applications/dsdriver/db2profile

打开一个新的终端窗口或重新启动即可使用。 该文件导出db2cli命令运行所需的所有环境变量。

答案 2 :(得分:0)

在anaconda3 jupyter笔记本python 3.7版中尝试ibm_db时遇到类似的错误。

Current location is /User/mb/anaconda3/lib/python3/site-packages

我使用以下命令设置变量DYLD_LIBRARY_PATH。

export DYLD_LIBRARY_PATH=/Users/mb/anaconda3/lib/python3.7/site-packages/ibm_db-3.0.1-py3.7-macosx-10.9-x86_64.egg/clidriver/lib

但是,仅当我从该目录中打开jupyter笔记本时,此方法才有效。 在〜/ .zshrc中添加了导出命令 现在可以在jupyter上完美运行。