达梦数据库ODBC连接
·
在Linux系统下配置达梦数据库(DM)的ODBC连接,需完成「安装ODBC驱动管理器」、「配置达梦ODBC驱动」、「定义数据源」及「测试连接」四个核心步骤,具体操作如下:
一、安装ODBC驱动管理器
1. 验证安装:
执行以下命令查看unixODBC版本及配置文件路径:
odbcinst -j
输出示例(关键路径需记录,用于后续配置):
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini # 驱动配置文件路径
SYSTEM DATA SOURCES: /etc/odbc.ini # 系统级数据源配置文件路径
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini # 用户级数据源配置文件路径(可选)
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
二、确认达梦ODBC驱动位置
达梦数据库安装时会自带ODBC驱动,默认路径为达梦安装目录下的bin文件夹,驱动文件名为libdodbc.so。
- 假设达梦安装目录为
/opt/dmdbms(默认路径,需替换为实际路径),则驱动路径为:/opt/dmdbms/bin/libdodbc.so - 若未找到,需确认达梦数据库是否安装(建议使用DM8及以上版本,自带ODBC驱动)。
三、配置ODBC驱动与数据源
ODBC依赖两个核心配置文件:odbcinst.ini(驱动定义)和odbc.ini(数据源定义),需根据odbcinst -j输出的路径修改。
1. 配置驱动(odbcinst.ini)
编辑系统级驱动配置文件(通常为/etc/odbcinst.ini):
sudo vim /etc/odbcinst.ini
添加以下内容(驱动名称可自定义,需与后续数据源配置对应):
[DM8 ODBC DRIVER] # 驱动名称(后续数据源会引用此名称)
Description = DM8 ODBC Driver # 驱动描述(自定义)
Driver = /opt/dmdbms/bin/libdodbc.so # 达梦ODBC驱动实际路径(替换为你的路径)
Setup = # 可选,一般留空
FileUsage = 1
CPTimeout = 5
CPReuse = 5
2. 配置数据源(odbc.ini)
编辑系统级数据源配置文件(通常为/etc/odbc.ini):
sudo vim /etc/odbc.ini
添加以下内容(定义一个具体的数据源,名称可自定义):
[DM8_DSN] # 数据源名称(后续连接时使用)
Description = DM8 Test DSN # 数据源描述(自定义)
Driver = DM8 ODBC DRIVER # 关联的驱动名称(必须与odbcinst.ini中的驱动名称一致)
Servername = localhost # 达梦数据库所在主机IP(远程连接填实际IP)
Port = 5236 # 达梦数据库端口(默认5236,需与实际端口一致)
Database = # 数据库名(可选,默认连接默认库)
Uid = SYSDBA # 登录用户名(默认SYSDBA)
Pwd = SYSDBA # 登录密码(默认SYSDBA,需替换为实际密码)
四、设置环境变量
为确保系统能加载到达梦的库文件(包括ODBC驱动依赖的达梦核心库),需配置LD_LIBRARY_PATH环境变量:
# 临时生效(当前终端)
export LD_LIBRARY_PATH=/opt/dmdbms/bin:$LD_LIBRARY_PATH
# 永久生效(建议添加到/etc/profile或~/.bashrc)
echo 'export LD_LIBRARY_PATH=/opt/dmdbms/bin:$LD_LIBRARY_PATH' | sudo tee -a /etc/profile
source /etc/profile # 立即生效
五、测试ODBC连接
使用unixODBC自带的isql工具测试连接,命令格式:
isql -v 数据源名称 用户名 密码
以步骤三中定义的DM8_DSN为例:
isql -v DM8_DSN SYSDBA SYSDBA
成功连接的输出:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
此时可输入SQL命令测试(如select * from v$version;),若返回达梦版本信息,则配置成功。
常见问题排查
-
驱动找不到:
- 检查
odbcinst.ini中Driver路径是否正确(libdodbc.so是否存在)。 - 确认
LD_LIBRARY_PATH已包含达梦bin目录(echo $LD_LIBRARY_PATH查看)。
- 检查
-
连接失败(isql报错):
- 检查达梦数据库是否启动(
systemctl status DmServiceDMSERVER)。 - 确认
odbc.ini中Servername(IP)、Port(端口)是否正确,且网络可通(telnet IP 5236测试)。 - 验证用户名密码是否正确(默认
SYSDBA/SYSDBA,若修改过需用新密码)。
- 检查达梦数据库是否启动(
-
权限问题:
- 确保
libdodbc.so有执行权限(chmod +x /opt/dmdbms/bin/libdodbc.so)。 - 配置文件(
odbc.ini、odbcinst.ini)需可读(chmod 644 /etc/odbc.ini /etc/odbcinst.ini)。
- 确保
通过以上步骤,即可在Linux系统中完成达梦数据库的ODBC连接配置。
https://eco.dameng.com/
更多推荐
所有评论(0)