sql server导入mysql,使用工具SQLyog
概述
需要将sql server的数据导入到mysql中,由于2种数据库存在各种差异,比如表字段类型就有很多不同,因此需要工具来实现。
这里使用SQLyog来实现。
SQLyog安装
安装过程参考文档:https://blog.csdn.net/Sunshine_liang1/article/details/84400820
注意:版本不能太低,必须要有导入外部数据才可以。
ODBC数据源
由于SQLyog只能连接到mysql,它不能连接sql server,因此连接sql server的工作,需要由odbc来进行连接。
以windows 11为例:
点击左下角的windows图标,输入odbc
就可以看到搜索结果,点击64位的
点击添加
选择sql server
输入信息
选择密码登录,输入账号和密码
选择数据库
点击完成
SQLyog数据导入
新建mysql连接
创建一个空库,也就是要传输的数据库名
CREATE DATABASE AdventureWorksDW2014 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
导入外部数据
点击导入外部数据
下一步
选择系统dsn,输入sql server的用户名和密码
选择mysql数据库
选择mysql数据库
从源拷贝
勾选第一个表,点击右边的三个点
点击编辑sql
这里会显示创建SQL表语句
将这段sql语句复制下来,然后手动在myql中运行,
1 2 3 4 | CREATE TABLE `AdventureWorksDW2014`.`AdventureWorksDWBuildVersion`( `DBVersion` varchar(50) NULL, `VersionDate` timestamp(6) NULL ); |
注意:SQLyog不会自动在目标数据库中创建表,创建的表的动作,需要手动完成才可以。
由于sql server和mysql表的字段存在差异,因此软件会自动生成与之匹配的创建SQL表语句
但是生成的创建SQL表语句并不是100%准确,我验证了一下,准确率在99%,准确率还是很高的。
务必勾选外键检查,它会帮你检查外键关联,自动调整传输表顺序,父关联表,会优先导入。
点击下一步
点击下一步
提示导入完成
整个传输过程完成
注意:上面只是演示了一张表,其实可以选择多个表,进行一次性传输,但前提是目标库中已经创建好表结构,就可以批量传输了。
传输过程是单进程的,一个表一个表的传,一条条数据插入,所以传输速度会比较慢。
如果sql server mdf文件在200m左右,传输需要花费30分钟左右。
验证
打开数据表,查看数据
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2019-08-24 Docker Swarm部署集群