Mssql链接mysql数据库

最近在做mysql数据库实时同步到mssql数据库的方案,花了一周时间,测试通过了,在实际机器上测试出现了若干问题。第一个问题就是在mssql上链接mysql的问题。

第一步,安装 Mysql ODBC

首先要在mssql的机器上安装mysql ODBC,如果没有安装将报错:

但安装不一定就能成功,比如会报错1918:

出现这种情况的原因是服务器上没有安装运行库,安装 MS C++2010后,再安装ODBC就没问题了。

第二步,新建ODBE

在控制面板-管理工具-数据源(ODBC)-用户DSN-添加-MySQL ODBE 5.1 Driver,测试看能否连接mysql。

第三步,链接mysql服务器

EXEC sp_addlinkedserver
@server = 'MySQL',
@srvproduct='MySql' ,
@provider = 'MSDASQL',
@provstr = 'Driver={MySQL ODBC 5.1 Driver};
Server=IP地址或localhost;
Database=默认数据库名称;
User=mysql数据库用户名,一般为root;
Password=用户密码;
Option=3;'

增加权限:

EXEC sp_addlinkedsrvlogin
@rmtsrvname='MySql' ,
@useself='false' ,
@locallogin='sa' ,
@rmtuser=' mysql数据库用户名,一般为root ' ,
@rmtpassword='用户密码'

  如果连接没有问题的话,在mssql管理器中可以看到mysql数据库了。

原文地址:https://www.cnblogs.com/liweis/p/4721285.html