SQL Server 创建链接服务器 链接mysql 进行数据同步

15 篇文章 2 订阅
2 篇文章 0 订阅

背景

一个项目的产品迭代,因为迭代过程中两套系统同时使用,两套系统设计使用的数据库不同,从Sqlserver改到mysql了,所以需要将sqlserver的业务数据定时同步到mysql中。

思路

当问题产生了,作为一个合格的码农,第一时间就是想着做一个程序实现数据同步,但是处于自身不叫懒惰,总觉得写个程序太累了,于是想到网上找一找有没有提供工具的人,最后也是无功而返,然后就想到了用 DBLink(Oracle 里面是这个名字),所有就有了如下解决办法。

解决方案

方案

按照如下步骤实现能够解决这个问题

  1. 创建一个连接服务器能够连接到mysql
  2. 使用sqlserver代理中的作业定时执行

实施

前提

数据库服务器已经安装了sqlserver,这个不强调了,不会装的自己网上搜索吧。

安装mysql链接程序

MySQL Community Downloads

下载后就一路下一步安装就行了。

创建ODBC源

  • 第一步

按照如下路径查找ODBC源配置程序

控制面板 ----> 系统和安全 ----> 管理工具 ----> ODBC 数据源(64 位)

如果你的电脑是Win10或者是11,你又不知道如何打开控制面板,或者找不到对应的东西,请尝试使用一下路径: 控制面板\系统和安全\管理工具

在这里插入图片描述

  • 第二步
    双击运行,切换tab到第二个 系统DSN
    记住,这个一定是在sqlserver服务器上操作,不要在客户端电脑上操作,那样是没用的
    在这里插入图片描述

  • 第三步 配置链接
    添加一个新的链接
    在这里插入图片描述

录入mysql的链接信息后,点击test测试一下,如果一切都是对的,会提示成功信息

在这里插入图片描述
在这里插入图片描述

创建链接服务器(SqlServer)

如下图 服务器对象 --> 连接服务器 --> 新建 如下图录入信息
在这里插入图片描述
切换到 安全性 录入完信息后点击确定

在这里插入图片描述

测试DBLink是否好用

按照如下语法根据实际情况编写sql即可

select * from  openquery(你的链接名称, 'sql语句')

如果能够查询到你想要的数据,表示成功了。

创建SqlServer 作业

  • 新建一个作业 (注意所有者尽量是管理员,避免后面执行sql时权限不足)

  • 选择左侧的 步骤

  • 新建步骤,随便输入一个名称

  • 类型选择T-SQL(需要其他类型,自行摸索吧)

  • 在下面空白区域输入你的sql语句

    • 因为这个需求时需要同步sql数据到mysql,所以我这里的sql语句就是通过dblink将sqlserver的数据更新|插入到mysql中
  • 注意一下空白区域上边的数据库,要选择对应的业务数据库,然后确定。

  • 在这里插入图片描述

  • 选择左侧的 计划

根据你的需要设计执行时间周期已经是否自行删除
在这里插入图片描述

  • 通知,报警这类如果有需要可以配置邮箱,进行通知。如果没有需要,现在可以按下确定,创建完成作业了。

运行作业

鼠标右键刚才创建的作业,点击 “作业开始步骤”,会出现如下图
在这里插入图片描述
根据提示确定作业是否执行成功。

查看作业运行日志

鼠标右键作业,选择 “查看历史记录”,如下图能看到历史执行情况
在这里插入图片描述

资料与引用

对我有帮助作用的资料

https://blog.csdn.net/weixin_43926268/article/details/109846295
https://blog.csdn.net/q3498233/article/details/16809511
https://blog.csdn.net/weixin_39381833/article/details/103621121
https://blog.csdn.net/q3498233/article/details/16809511

  • 10
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 在将SQL Server数据库转换为MySQL数据库时,首先需要创建一个新的MySQL数据库。可以使用MySQL Workbench或phpMyAdmin等工具来创建数据库创建数据库后,需要将SQL Server数据库中的表结构和数据导出为SQL脚本。可以使用 SQL Server Management Studio 来导出脚本,选择 "生成脚本" 功能,并确保选择了要导出的表和存储过程。 导出的SQL脚本需要进行适当的修改,以使其与MySQL的语法和特性兼容。例如,将SQL Server特定的数据类型和函数替换为MySQL的对应类型和函数。还需要修改脚本中的语法细节,如引用表名、列名等的方式,也可能需要重新调整约束和索引的定义。 完成脚本的修改后,可以将其导入到MySQL数据库中。可以使用MySQL的命令行工具或GUI工具,如Navicat等来执行脚本。确保在导入脚本之前,已经创建了与脚本中表结构一致的表。 在导入脚本后,需要检查并处理可能的兼容性问题或错误。这可能涉及到数据类型的转换、函数的调整以及处理可能存在的差异等。 另外,还需要注意保证数据的一致性和完整性。检查和调整数据库的约束和索引,并确保数据在转换过程中没有丢失或损坏。 最后,进行转换后的MySQL数据库的测试和验证,确保数据正确且应用程序能够正常访问和操作数据库。 ### 回答2: 将SQL Server数据库转换为MySQL可以通过以下步骤进行: 1. 导出SQL Server数据库结构:使用SQL Server Management Studio (SSMS) 导出数据库结构的脚本。这个脚本将包含数据库的表、列、索引和其它对象的定义。 2. 导出SQL Server数据:使用SSMS导出表中的数据为一个可移植的格式(如CSV)或者生成INSERT语句的脚本。 3. 创建MySQL数据库:在MySQL创建一个新的数据库,用于导入SQL Server数据和结构。可以使用MySQL的命令行工具或者图形化工具(如phpMyAdmin)来创建数据库。 4. 导入SQL Server数据库结构:执行步骤1中导出的脚本来创建表、列、索引和其它对象。 5. 导入SQL Server数据:使用MySQL的命令行工具或图形化工具来导入步骤2中导出的数据。 6. 调整数据类型和语法:在SQL ServerMySQL之间存在一些数据类型和语法上的差异。在导入数据后,需要根据需要调整数据类型和SQL语句。 7. 测试数据完整性:对导入的数据进行全面测试,确保其完整性和准确性。可以使用SQL查询和比对工具来验证数据是否正确导入。 8. 更新应用程序:如果有应用程序连接到SQL Server数据库,将连接信息更新为MySQL数据库。 总之,将SQL Server数据库转换为MySQL需要导出数据和结构,创建MySQL数据库,并将数据和结构导入其中,并进行必要的数据类型和SQL语句调整。最后,需要测试数据的完整性,并更新应用程序以连接到MySQL数据库。 ### 回答3: SQL Server数据库MySQL可以采用多种方法,取决于具体的需求和环境。 一种常见的方法是使用MySQL Workbench来进行转换。首先,将SQL Server数据库的结构导出为SQL脚本,然后在MySQL Workbench中执行该脚本来创建MySQL数据库的结构。 另一种方法是使用数据迁移工具,如AWS Database Migration Service或Microsoft SQL Server Migration Assistant。这些工具可以帮助将SQL Server数据库中的数据迁移到MySQL数据库中。 在进行数据库转换时,需要注意以下几点: 1. 数据类型的差异:SQL ServerMySQL在一些数据类型上可能存在差异,例如日期时间类型、字符串类型等。在进行转换之前,需要先了解并处理好这些差异。 2. 约束和索引:约束和索引在两种数据库中也可能有所不同,需要确保在转换过程中这些约束和索引在目标数据库中能够正常工作。 3. 存储过程和函数:SQL ServerMySQL对存储过程和函数的语法和特性也可能存在差异。在转换过程中,需要相应地修改和调整这些存储过程和函数。 4. 数据迁移的安全性和完整性:在进行数据迁移时,需要保证数据的安全性和完整性。可以采用备份和恢复的方式来确保数据的一致性,并在迁移完成后进行验证。 总的来说,SQL Server数据库MySQL可以通过使用MySQL Workbench、数据迁移工具等方法来完成。在进行转换之前,需要对两种数据库的差异有一定的了解,并进行相应的调整和处理,以确保转换的成功和数据的完整性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值