SQL Server数据库如何添加mysql链接服务器(Windows系统)
- 一、说明
- 二、下载mysql的odbc驱动
- 三、安装mysql odbc
- 四、配置ODBC
- 4.1 控制面板→ODBC数据源(64位)→双击打开
- 4.2 添加msql odbc数据源
- 五、测试添加是否成功
- 六、打开SSMS,添加链接服务器
- 6.1 常规
- 6.2 密码
- 七、linkedserver查询语句
- 7.1 利用OPENQUERY访问
一、说明
通常,配置链接服务器是为了支持数据库引擎在其他 SQL Server 实例或诸如 Oracle 等其他数据库产品上执行包含表的 Transact-SQL 语句。 许多类型的数据源都可配置为链接服务器,包括第三方数据库提供程序和 Azure CosmosDB
二、下载mysql的odbc驱动
官网下载地址
一般是选最新的版本下载。
选64位还是32位,要保证和你的sqlserver版本一致,利用下面sql查看:
三、安装mysql odbc
双击msi文件即可安装,但是可能提示需安装Redistributable for Visual Studio的提示,导致安装不了,可以到官网下载安装
四、配置ODBC
4.1 控制面板→ODBC数据源(64位)→双击打开
4.2 添加msql odbc数据源
点击系统DSN→添加→MySQL ODBC x.1 Unicode Driver
点击完成后,跳出mysql链接页面
五、测试添加是否成功
注意:root账户可能遇到的问题:错误Connection Failed.如下图
解决办法:
这个报错是因为root用户的问题,root用户默认是localhost身份,不支持远程连接。需按下面sql修改:
//如果报了上面的错,那第一次执行这个sql显示的应该是localhost,那就执行下面的update语句
select host from user where user = 'root'
//执行完这个update语句一定要重启mysql服务
update user set host = '%' where user = 'root';
六、打开SSMS,添加链接服务器
6.1 常规
链接服务器:可自定义取名,用于后面调用访问
数据源为odbc的名称,如这里,如这里我应该填写 xntest
6.2 密码
经过上面两步,就可以连接成功了,连接成功是没有成功窗口的。
七、linkedserver查询语句
7.1 利用OPENQUERY访问
-- mysqltest为链接服务器名称
-- 里面的select需要使用''引起来,并且如果寻找where条件的字符还需要再添加一次引号
select * from openquery(mysqltest,'select * from table1 where id = ''1''')