文章目录
1.前言背景
用户需求在达梦库创建dblink,可以访问并更新sqlserver数据库数据。该需求是跨类型库访问,需借助驱动实现,运行原理是达梦库创建的dblink通过odbc调用FreeTDS的驱动访问修改sqlserver的数据。
dblink简介
达梦数据库的外部链接dblink是一种数据库的实体对象,记录了远程数据库的连接信息,用于建立与远程数据的联系。用户可以通过数据库的外部链接对象透明地操作远程数据库的数据,对远程数据库的表进行查询和增删改操作,也可以调用远程的存储过程。数据库的外部链接对象可以是公用的(数据库中所有用户使用),也可以是私有的(特定用户使用)。
FreeTDS简介
FreeTDS是一个程序库,可以实现在Linux系统下访问微软的SQL数据库! FreeTDS 是一个开源的程序库,是TDS(表列数据流 )协议的再次实现。
odbc简介
ODBC(Open Database Connectivity,开放数据库互连)提供了一种标准的API(应用程序编程接口)方法来访问DBMS(Database Management System)。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。ODBC具有最大的独立性和开放性:与具体的编程语言无关,与具体的数据库系统无关,与具体的操作系统无关。
2.搭建访问sqlserver的dblink
2.1准备条件
(1)一台机器A安装sqlserver数据库。
(2)一台机器B安装达梦数据库和FreeTDS及odbc。
(3)关闭防火墙和selinux。
环境介绍
数据库版本 | ip | |
---|---|---|
A | Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64) | 192.168.231.1 |
B | V7.6.1.88-Build(2020.12.22-132014)ENT | 192.168.85.4 |
(4)在sqlserver数据库的TEST库上创建测试用户TEST(密码:TEST),创建测试表TEST1027,如下图所示: