相关推荐recommended
SQL Server数据库如何添加mysql链接服务器(Windows系统)
作者:mmseoamin日期:2024-04-01

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查看:

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第1张

          三、安装mysql odbc

            双击msi文件即可安装,但是可能提示需安装Redistributable for Visual Studio的提示,导致安装不了,可以到官网下载安装

          四、配置ODBC

          4.1 控制面板→ODBC数据源(64位)→双击打开

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第2张

          4.2 添加msql odbc数据源

          点击系统DSN→添加→MySQL ODBC x.1 Unicode Driver

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第3张

          点击完成后,跳出mysql链接页面

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第4张

          五、测试添加是否成功

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第5张

          注意:root账户可能遇到的问题:错误Connection Failed.如下图

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第6张

          解决办法:

          这个报错是因为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

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第7张

          6.2 密码

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第8张

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第9张

          经过上面两步,就可以连接成功了,连接成功是没有成功窗口的。

          七、linkedserver查询语句

          7.1 利用OPENQUERY访问

          -- mysqltest为链接服务器名称
          -- 里面的select需要使用''引起来,并且如果寻找where条件的字符还需要再添加一次引号
          select * from openquery(mysqltest,'select * from table1 where id = ''1''')
          

          SQL Server数据库如何添加mysql链接服务器(Windows系统),在这里插入图片描述,第10张