本次搭建的DBLINK为Linux端达梦数据库访问Win端的SQL SERVER数据库,通过配置ODBC连接SQL SERVER数据库,DM创建ODBC的DBLINK连接,来实现DM和SQL SERVER的DBLINK,以下为具体的操作步骤。
- DBLINK概述:
DBLINK(Database LINK)顾名思义就是数据库的链接没就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据表中的数据时,本地数据库就必须要创建远程数据库的DBLINK没通过DBLINK,本地数据库可以像访问自己本身存储的表的数据一样,访问远程数据库表中的数据。
- DM数据库环境概述:
操作系统:Centos 7.4.1708
数据库版本: 8.1-2-2-21
数据库模式:单实例
IP地址:192.168.6.63
- SQLServer环境概述:
操作系统:Windows 10企业版
数据库版本:10.50.1600
IP地址:192.168.6.41
- DBLINK所使用的安装包概述:
unixODBC-2.3.0.tar.gz
freetds-1.2.21.tar.gz
备注:DM数据库和SQLserver数据库已安装完毕,Dblink所需的相关安装包已上传至DM数据库所在主机完成。
1,解压和编译ODBC和Freetds
解压安装包,解压命令如下,解压过程省略
[root@centos7 tmp]# cd /tmp
[root@centos7 tmp]# tar -zxvf unixODBC-2.3.0.tar.gz
[root@centos7 tmp]# tar -zxvf freetds-1.2.21.tar.gz
编译解压的安装包,编译命令如下,编译过程省略
[root@centos7 tmp]# cd unixODBC-2.3.0/
[root@centos7 unixODBC-2.3.0]# ./configure
[root@centos7 unixODBC-2.3.0]# make && make install
[root@centos7 unixODBC-2.3.0]# cd ..
[root@centos7 tmp]# cd freetds-1.2.21/
[root@centos7 freetds-1.2.21]# ./configure
[root@centos7 freetds-1.2.21]# make && make install
2,测试连接
WIn10防火墙已关闭,两主机之间网络端口开放,数据库SQL SERVER已启动,如图所示。

DM数据库所在Linux主机进行测试连接
查看安装版本具体信息:/usr/local/bin/tsql -C
连接数据库:/usr/local/bin/tsql -H 192.168.6.41 -p 1433 -U sa -P 123456789 -D master
-H:IP地址
-p:数据库端口
-U:用户名
-P:密码
-D:系统数据库名
-S:在freetds.conf中指定要连接的服务器条目
查看版本信息:
[root@centos7 ~]# /usr/local/bin/tsql -C
Compile-time settings (established with the "configure" script)
Version: freetds v1.2.21
freetds.conf directory: /usr/local/etc
MS db-lib source compatibility: no
Sybase binary compatibility: no
Thread safety: yes
iconv library: yes
TDS version: auto
iODBC: no
unixodbc: yes
SSPI "trusted" logins: no
Kerberos: no
OpenSSL: no
GnuTLS: no
MARS:

本文详细介绍了如何在Linux环境下,通过ODBC和Freetds驱动,配置DBLINK连接到Windows上的SQLSERVER数据库。首先,解压并编译ODBC和Freetds,然后进行连接测试,确保网络通畅和数据库可用。接着,配置freetds.conf和odbcinst.ini、odbc.ini文件,建立ODBC数据源。之后,通过DM数据库创建DBLINK,并测试查询SQLSERVER的表。最后,解决可能出现的加载库文件失败的问题,拷贝ODBC驱动到DM的bin目录,成功实现跨平台数据库访问。
最低0.47元/天 解锁文章
1969





