[MySQL] SqlServer 迁移到 MySQL 方法介绍

一、原则:

只迁移表结构和数据,存储过程、函数、触发器尽量自己改写,并充分测试。

迁移前,先设置好数据库的一些参数,比如默认存储引擎,默认编码等,方便后续导入。

二、方法:

1、使用MySQL Workbench

  MySQL Workbench提供了Migration Wizard(数据库迁移)功能,支持MSSQL的数据形式转换为MYSQL下的数据格式;

  具体参照这篇文章:http://mysqlworkbench.org/2012/07/migrating-from-ms-sql-server-to-mysql-using-workbench-migration-wizard/

  如果有Not enough memory to allocate insert buffer of size 1073741824,请行Google解决。可能是MySQL端max_allowed_packet、key_buffer_size大小设置的问题。

  博主的解决办法是,在windows机器新建一个MySQL数据库,作为中间导入库。然后再在两个MySQL库间同步数据。

注意:

  1)看日志文件wb.log的报错,复制结果以这个日志为准。

  2)source RMBMS 连接参数,Server填打开SSMS后,服务器属性后面那个名称(常规-名称)。

2、使用Navicat Premium -- 本人推荐

  Navicate 提供了数据传输的功能,可以作为中间操作节点,将一个数据库复制到另一个库。

  操作简单,常规界面选择要同步的库和表,高级界面去掉创建索引、勾上遇到错误继续、其他基本默认即可。

  完成后注意看日志,如果有报错没有复制数据,请重新同步一下这些表,并在高级里勾上使用完整插入语句,

  这样我们在日志里,可以看到SQL语句,手动执行插入和调试错误即可。有表没同步,请手动建表。

三、后续操作:

  1、手动改写存储过程、函数和触发器,并要经过程序充分测试检验。

  2、根据业务需求,添加合适的索引。

附:另外靠谱的两种方法:https://www.percona.com/blog/2016/06/23/migrate-from-ms-sql-server-to-mysql/

时间: 2024-10-02 18:05:20

[MySQL] SqlServer 迁移到 MySQL 方法介绍的相关文章

各种主流 SQLServer 迁移到 MySQL 工具对比

我之所以会写这篇对比文章,是因为公司新产品研发真实经历过这个痛苦过程(传统基于SQL Server开发的C/S产品转为MySQL云产品).首次需要数据转换是测试环节,当时为了快速验证新研发云产品性能与结果准确性(算法类),所以需大量的原始数据,最快的办法就是使用老产品的真实数据.因为在前期数据转换时主用于内部验证,并没有花很多心思去处理这个事情,一般数据能导过去,不对的地方自己再手工处理一下就好了.后面对这个转换工具引起了极大的重视是正式有老客户升级时,因为正式投入使用就容不得半点错误(当时至少

【数据库】各种主流 SQLServer 迁移到 MySQL 工具对比

在部署前期,首要任务就是考虑如何快速把基于 SQL Server 数据库的应用程序移植到阿里云的 MySQL 数据库.由于程序是基于 O/R mapping 编写,并且数据库中没有使用存储过程.用户函数等数据库功能,因此仅仅需要考虑的是数据库中的数据如何转换到新的 MySQL 数据库中. 通过度娘查找,找到如下四种可以使用的工具,并且每一种工具都有大量的用户,还有不少用户在自已的博客中写下了图文使用经验,这四种工具分别是: ● SQLyog(https://www.webyog.com/prod

sqlserver迁移到mysql遇到的那些坑

背景 由于各种原因,成本啊.扩展性等,公司决定把线上的业务从sql server迁移到mysql RDS. 迁移过程主要包括了程序修改和数据库的迁移.程序修改我们略过不谈,我们重点关注数据库迁移. 大概过程 由于是异构的数据库,没有找到数据实时同步的方法(若哪位大侠可以异构实时同步,还请多多指教),所有使用ETL工具定时同步数据. 同步的数据包括insert和update的数据(还好业务中没有物理的delete). 待万事俱备,切换数据库之前,再进行一次数据同步. 切换完成之后,在进行数据检查,

主流 SQLServer 迁移到 MySQL 工具对比

首次需要数据转换是测试环节,当时为了快速验证新研发云产品性能与结果准确性(算法类),所以需大量的原始数据,最快的办法就是使用老产品的真实数据.因为在前期数据转换时主用于内部验证,并没有花很多心思去处理这个事情,一般数据能导过去,不对的地方自己再手工处理一下就好了.后面对这个转换工具引起了极大的重视是正式有老客户升级时,因为正式投入使用就容不得半点错误(当时至少有几百家客户需要升级新产品),所以数据转移第一要求是百分百的准确率,其次是速度要快.现在回想起来,当时要有这么一篇对比文章,那我就不会浪费

.NET程序迁移到Mysql的极简方案——让GGTalk同时支持Sqlserver与mysql全程记录!

园子里的这个GGTalk,咱们前前后后用它移花接木做的IM项目也不下三四个了.初次入手的时候,洋洋代码,多少感觉有些难以把握.不过一来二去,理清了头绪,也就一览无余了.相信跟我们一样想要利用GGTalk的同学大有人在,于是我打算写这样一个<GGTalk源码详解系列>,把自己对GGTalk的梳理分享给大家,让大家更容易上手. 之前有一个企业级的IM项目,我们用GGTalk改造的,但是要求使用Mysql数据库,所以花了一番功夫将GGTalk迁移到的Mysql,功夫不负有心人,总算弄出了个成果.如今

SQLServer(MSSQL)、MySQL、SQLite、Access相互迁移转换工具 DB2DB v1.4

最近公司有一个项目,需要把原来的系统从 MSSQL 升迁到阿里云RDS(MySQL)上面.为便于测试,所以需要把原来系统的所有数据表以及测试数据转换到 MySQL 上面.在百度上找了很多方法,有通过微软 DTS 的,也有使用 mss2sql 工具进行转换的.使用 DTS 需要预先创建好数据表,否则新迁移的数据库是没有主键的.而 mss2sql 工具可以解决以上问题,但转换速度非常慢!我需要转换 3000 万的数据,在一台相当不错的服务器上面,也需要几天几夜才能转换完成.而 DB2DB 就是在这样

SQLServer(MSSQL)、MySQL、SQLite、Access相互迁移转换工具 DB2DB v1.3

最近公司有一个项目,需要把原来的系统从 MSSQL 升迁到阿里云RDS(MySQL)上面.为便于测试,所以需要把原来系统的所有数据表以及测试数据转换到 MySQL 上面.在百度上找了很多方法,有通过微软 DTS 的,也有使用 mss2sql 工具进行转换的.使用 DTS 需要预先创建好数据表,否则新迁移的数据库是没有主键的.而 mss2sql 工具可以解决以上问题,但转换速度非常慢!我需要转换 3000 万的数据,在一台相当不错的服务器上面,也需要几天几夜才能转换完成.而 DB2DB 就是在这样

SQLServer(MSSQL)、MySQL、SQLite、Access相互迁移转换工具 DB2DB v1.1

最近公司有一个项目,需要把原来的系统从 MSSQL 升迁到阿里云RDS(MySQL)上面.为便于测试,所以需要把原来系统的所有数据表以及测试数据转换到 MySQL 上面.在百度上找了很多方法,有通过微软 DTS 的,也有使用 mss2sql 工具进行转换的.使用 DTS 需要预先创建好数据表,否则新迁移的数据库是没有主键的.而 mss2sql 工具可以解决以上问题,但转换速度非常慢!我需要转换 3000 万的数据,在一台相当不错的服务器上面,也需要几天几夜才能转换完成.而 DB2DB 就是在这样

SQLServer(MSSQL)、MySQL、SQLite、Access相互迁移转换工具 DB2DB v1.2

最近公司有一个项目,需要把原来的系统从 MSSQL 升迁到阿里云RDS(MySQL)上面.为便于测试,所以需要把原来系统的所有数据表以及测试数据转换到 MySQL 上面.在百度上找了很多方法,有通过微软 DTS 的,也有使用 mss2sql 工具进行转换的.使用 DTS 需要预先创建好数据表,否则新迁移的数据库是没有主键的.而 mss2sql 工具可以解决以上问题,但转换速度非常慢!我需要转换 3000 万的数据,在一台相当不错的服务器上面,也需要几天几夜才能转换完成.而 DB2DB 就是在这样