目前手头的项目是一个UI自动化框架,其中有些模块的功能需要与DB2数据库交互,于是百度了一下python操作DB2的模块是 ibm_db。
然而我的工作机器是一台windows堡垒机,不能联网,固不能直接使用pip进行安装,所以只能使用离线安装包了。
百度了一下,由于ibm_db模块的安装依赖于其他文件,所以需要下载好几个文件,按照百度上的方法试了一通,然而没有解决问题。
无奈之下,我根据pip安装ibm_db模块的提示信息想到了其他解决方案,最终解决了问题,过程如下:
首先,我在联网的机器上使用pip进行安装时注意到ibm_db模块的下载地址,如下图
然后我根据这个地址下载了ibm_db模块的安装包(既然pip安装的ibm_db可以使用,那么这个网址的安装包肯定很稳。。)
将ibm_db-2.0.9.tar.gz 解压到 C:\Python27\Lib\site-packages 目录下,进入ibm_db-2.0.9目录,然后命令行执行 python setup.py install命令,
此时命令行提示如下
说明ibm_db模块的安装依赖于nt32_odbc_cli.zip里的文件,根据地址下载好nt32_odbc_cli.zip
将nt32_odbc_cli.zip解压到ibm_db-2.0.9目录下,然后在ibm_db-2.0.9目录下重新执行 python setup.py install命令,安装成功
进入python交互模式测试一下,import 成功
好了,总结一下,离线安装ibm_db大概步骤如下:
1.下载ibm_db安装压缩包,地址如下:
https://files.pythonhosted.org/packages/3f/61/389c6decacfed61c2724005b8c2be61f2c699f731b53af13517e5a0e6e98/ibm_db-2.0.9.tar.gz
2.将ibm_db-2.0.9.tar.gz解压,然后将解压后的文件夹复制到 C:\Python27\Lib\site-packages(根据自己python安装目录修改)目录下
3.下载 DB2数据库的ODBC驱动相关文件,地址如下:
https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers/odbc_cli/nt32_odbc_cli.zip
4.将nt32_odbc_cli.zip解压(解压后的文件夹为 clidriver)
5.将clidriver文件夹复制到 C:\Python27\Lib\site-packages\ibm_db-2.0.9 目录下,即setup.py的同级目录
6.打开命令行,在C:\Python27\Lib\site-packages\ibm_db-2.0.9目录下 执行命令 python setup.py install
7.进入python交互模式, 输入import ibm_db,如果没有报错即安装成功