达梦DBLINK连接sqlserver2014

1、编译安装Unixodbc与Freetds
1.1解压安装包
[dmdba@localhost ODBC_INSTALL]$ tar -xf unixODBC-2.3.7.tar.gz
[dmdba@localhost ODBC_INSTALL]$ tar -xf freetds-1.3.tar.gz
[dmdba@localhost ODBC_INSTALL]$ ll
drwxr-xr-x 10 dmdba dinstall 4096 7月 13 2021 freetds-1.3
-rw-r–r-- 1 root root 3057336 4月 21 10:34 freetds-1.3.tar.gz
drwxr-xr-x 20 dmdba dinstall 4096 8月 10 2018 unixODBC-2.3.7
-rw-r–r-- 1 dmdba dinstall 1669501 4月 20 14:43 unixODBC-2.3.7.tar.gz
在这里插入图片描述
1.2编译安装
先编译安装unxiodbc:命令如下过程省略
[dmdba@localhost ODBC_INSTALL]$ cd unixODBC-2.3.7/
[dmdba@localhostunixODBC-2.3.7]$./configure --prefix=/dmsoft/unixODBC_2.3.7

[dmdba@localhost unixODBC-2.3.7]$ make && make install

编译安装freetds:命令如下过程省略
[dmdba@localhost ODBC_INSTALL]$ cd freetds-1.3/
[dmdba@localhost freetds-1.3]$ ./configure --prefix=/dmsoft/freetds-1.3 --with-unixodbc=/dmsoft/unixODBC_2.3.7
[dmdba@localhost freetds-1.3]$ make && make install

注意:需要用参数–with-unixodbc指定unixodbc的安装位置,用来编译odbc相关功能,否者编译安装后没有odbc相关驱动。
1.3配置环境变量
编辑dmdba的环境变量配置文件/home/dmdba/.bash_profile
增加先下面配置:
export FREETDS_HOME=/dmsoft/freetds-1.3
export UNIXODBC_HOME=/dmsoft/unixODBC_2.3.7
export LD_LIBRARY_PATH=" L D L I B R A R Y P A T H " : LD_LIBRARY_PATH": LDLIBRARYPATH":FREETDS_HOME/lib:$UNIXODBC_HOME/lib

export PATH= P A T H : PATH: PATH:FREETDS_HOME/bin:$UNIXODBC_HOME/bin

2、配置UnixODBC与FreeTDS
2.1配置FreeTDS
1、配置文件准备
vim /dmsoft/freetds-1.3/etc/freetds.conf
增加配置:
[mssqlserver]
host = 192.168.100.128
port = 1433
tds version = 7.0

注意:tds version版本需要配置位7.0否则会报连接错误
2、测试连接数据库
先使用tsql测试连接SQLserver数据库
命令:
tsql -H 192.168.100.128 -p 1433 -U sa -P Dameng@123 -D master
-H:IP地址
-p:数据库端口
-U:用户名
-P:密码
-D:系统数据库名
-S:在freetds.conf中指定要连接的服务器条目

连接后查看master数据库下的TEST1表:
在这里插入图片描述
测试通过freetds.conf配置文件连接数据库:tsql -S mssqlserver -U sa -P Dameng@123 -D master
在这里插入图片描述

2.2配置UnixODBC
1.准备配置文件

编辑配置文件odbcinst.ini:
vim /dmsoft/unixODBC_2.3.7/etc/odbcinst.ini
配置文件内容:
[FreeTDS] # unixodbc驱动名称
Description=ODBC of FreeTDS for MS SQL 2008 # 简介
Driver=/dmsoft/freetds-1.3/lib/libtdsodbc.so # 驱动所在位置

编辑配置文件odbc.ini:
vim /dmsoft/unixODBC_2.3.7/etc/odbc.ini
配置文件内容:
[TEST]
Driver = /dmsoft/freetds-1.3//lib/libtdsodbc.so
Description = My Second Test DSN
Trace = No
Server = 192.168.100.128
Database = master
Port = 1433
TDS_Version = 7.0
2、测试数据库连接
isql -v TEST sa Dameng@123
Isql登录后查询表TEST1:

在这里插入图片描述
3、创建DBLINK
3.1创建DBLINK
登录数据库创建DBLINK
/dmsoft/dmdbms/bin/disql SYSDBA/SYSDBA
SQL>create link “SYSDBA”.“TEST” connect ‘ODBC’ with “sa” identified by “Dameng@123” using ‘TEST’;
3.2拷贝驱动
将UnixODBC与FreeTDS安装目录下的lib目录下的所有驱动包复制到数据库bin目录下
cp -a /dmsoft/freetds-1.3/lib/lib* /dmsoft/dmdbms/bin/
cp -a /dmsoft/unixODBC_2.3.7/lib/lib* /dmsoft/dmdbms/bin/

3.3测试DBLINK
通过DBLINK查询sqlserver的表
/dmsoft/dmdbms/bin/disql SYSDBA/SYSDBA
SQL>select * from TEST1@TEST;
在这里插入图片描述

4、FreeTDS版本问题
4.1FreeTDS0.9版本
问题描述:当使用FreeTDS0.9版本连接sqlserver查询数据时导致数据库异常

4.2FreeTDS1.0.3版本问题
问题描述:采用FreeTDS1.0.3版本连接sqlserver查询数据时发现如果sqlserver的数据库名称如果不带有下划线就会报获取对象失败的错误,查询数据库名称带”_”的就不会报错*

4.3总结
达梦数据库是2021年8.1.2.18版本需要使用FreeTDS版本1.3的最新版本配置ODBC连接sqlserver,来避免上述两个DBLINK连接查询的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值