背景
政策要求银行数据库逐步采用国产数据库替代,达梦DB作为国内市占较高的数据库厂商,其关系型数据库DMDB经常成为mysql的国产替代选择。因此基于mysql开发的python工程开发、调试、部署过程中都需要能正确连接它。
本文主要解决:Windows环境下Python如何连接达梦国产数据库。
流程
详细介绍
DMDB安装
1、安装的磁盘内存空间需要大于1G;
2、安装前需要关闭防火墙,360等,不然可能无法开启实例服务,连接数据库报错;
3、请使用管理员身份运行压缩包中的setup.exe;
4、安装完成后,请检查实例服务是否启动。打开DM服务查看器,确认DmAPService已经启动;
5、查看环境变量DM_HOME设置是否正确。
官网下载地址(x86):
具体步骤完全按照提示默认即可。过程参考:
VS2019安装
安装编译工具 Microsoft Visual C++ Build Tools。下载可参考(直接安装上面软件再选择对应的编译工具下载自动安装即可,软件较大2.2G):
dmPython安装
示例中DMDB在D盘DM文件夹下
1、在安装DMDB路径下的drivers目录下,找到 dmPython 的驱动源码;
2、打开cmd,进入dmPython。命令示例:cd D:\DM\drivers\python\dmPython;
3、安装运行命令:python setup.py install;
4、构建DPI环境。将D:\DM\drivers\dpi中所有文件复制粘贴到dmPython的安装路径,查询方式。
图中为:
C:\\Users\\admin\\AppData\\Local\\Programs\\Python\\Python38\\lib\\site-packages\\dmpython-2.4.5-py3.8-win-amd64.egg
特殊:
如果需要安装到虚拟环境,第二步后先打开虚拟环境(以env2023为例),再执行第三步
activate env2023
第四步完成后还需要重新设置虚拟环境
virtualenv --system-site-packages env2023
测试
1、安装DM数据库配置助手,创建数据库;
2、Python测试代码
import pandas as pd
import dmPython
conn=dmPython.connect(user='自设',password='自设',server='LOCALHOST', port=5236)
df = pd.read_sql(sql, conn)