第一步 :在MySql服务器上安装与系统对应的 MySql-Connector-ODBC 官方下载地址 安装过程中可能会报 缺失 msvcr100.dll 的错误,这需要你根据系统到网上下载对应的这个dll文件。(当初遇到这个问题的时候,在网上试了很多的这种文件 最后才找到一个合适自己
第一步 :在MySql服务器上安装与系统对应的 MySql-Connector-ODBC
官方下载地址
安装过程中可能会报 缺失 msvcr100.dll 的错误,这需要你根据系统到网上下载对应的这个dll文件。(当初遇到这个问题的时候,在网上试了很多的这种文件 最后才找到一个合适自己的)
如果换了几个这个dll还是无法解决,可以考虑下载安装一个较低一点的版本 (当初我尝试5.3.4失败了一上午,结果换成5.1 一路顺畅)
第二步 :设置MySql Connector
控制面板-管理工具-数据源(ODBC),在【ODBC 数据源管理器】的【系统DSN】中点击【添加】
在弹出的窗口中如下图填写
其中 Test 是该数据源的命名,在之后才会用到
TCP/IP Server即当前服务器的IP,Port不用修改
User和Password就是数据库的账号密码
Database就是想要建立连接的数据库
填完之后,点击【Test】 如果弹出连接成功,则表示可成功创建。
注意:测试连接情况的时候,可能会报出【Host 'XXX' is not allowed to connect to this MySQL server】
这是因为MySQL没有开启远程访问权限。
解决方案可以参考这篇文章【戳这里】
第三步: 创建链接服务器
exec sp_addlinkedserver @server = ' Test ' , -- 这是之前创建MySql Connector时的data source name @srvproduct = ' MyConnector ' , -- 这个随便 @provider = ' MSDASQL ' , -- 这是固定的 @datasrc = NULL , @location = NULL , @provstr = ' Driver={MySQL ODBC 5.3 ANSI Driver};Server=115.11.111.11;Database=myDatabase;User=root;Password=mypassword;Option=3; ' , -- 连接字符串 @catalog = NULL go exec sp_addlinkedsrvlogin @rmtsrvname = ' Test ' , @useself = ' false ' , @rmtuser = ' root ' , @rmtpassword = ' mypassword ' ; GO
这个比较简单,至于连接字符串,这有个在线生成器
第四步 :测试连接及使用
测试连接方式如下图
链接服务器的使用
主要是利用函数 OpenQuery
SELECT * FROM OPENQUERY (Test , ' select * from Table001 ' ) UPDATE OPENQUERY (Test , ' SELECT name FROM Table001 WHERE id = 1 ' ) SET name = ' ADifferentName ' INSERT OPENQUERY (Test , ' SELECT name FROM Table001 ' ) VALUES ( ' sss ' ) DELETE OPENQUERY (Test , ' SELECT name FROM Table001 WHERE name = '' sss ''' )
其中Test是创建的链接服务器的名字
查看更多关于Sqlserver创建连接MySql的链接服务器的详细内容...