• Sqlserver创建连接MySql的链接服务器


    第一步:在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是创建的链接服务器的名字

  • 相关阅读:
    Spring3.2新注解@ControllerAdvice
    Spring读取加密属性文件处理--待整理
    SpringMVC之三:配置Spring MVC Controller
    深入理解DIP、IoC、DI以及IoC容器
    缓存与数据库一致性之三:缓存穿透、缓存雪崩、key重建方案
    Spring容器初始化过程
    Spring框架中的@Import、@ImportResource注解
    @SpringBootApplication注解分析
    Spring bean加载之1:BeanFactory和FactoryBean
    内存使用情况
  • 原文地址:https://www.cnblogs.com/TiestoRay/p/4358382.html
Copyright © 2020-2023  润新知