SqlServer库表迁移到Mysql库(使用SQLyog工具、直接用Navicat客户端数据库导入)

SqlServer库表转移到Mysql库

参考网址: 用sqlyog将sql文件导入mysql_使用sqlyog将sql server 迁移到mysql

一、使用工具

工具下载包:  Mysql包及辅助软件(SQLyog)

     

二、使用SQLyog迁移过程

1、使用sqlyog连接目标数据库

 

 

 2、选择目标数据库

  ---在SQLServer数据库中需要存在对应传进Mysql库的表

  ---选好库(要迁移到Mysql哪个库)

 3、选中数据库后点击工具栏【高级工具】——》【导入外部数据...】,选择【开始新工作】点击下一步

 

 

 4、选择【任何ODBC数据源】,选择【文件DSN】,点击【建立新的DSN...】

 

 

 5、选择【文件数据源(与机器无关)】,点击下一步

 

 

 6、选择【sql server】,点击下一步

 

 

 7、保存DSN文件至任意位置(自己选择要保存的盘符位置),文件名自定义(DB01),点击【下一步】【完成】

 

 8、描述任意输入,输入sql server数据库地址,点击【下一步】

 

 

9、点击下一页

 

 

 10.选择源数据库,点击【下一步】

 

11、数据源测试

 

12、回到选择数据源页面,选择刚刚创建的dsn文件,输入数据源凭据(sql server用户名密码),点击【下一步】

 

13、输入MySQL数据库凭据,选择数据库为目标数据库,点击【下一步】(选择要包存到mysql的哪个库)

 14、选择【从数据源拷贝表】,点击【下一步】

 

 

 15、选择SQL Server库中需要迁移数据的表

!!!勾选多个可一次性迁移多个表

 

注意:要导入sqlserver表的时间字段需要改下

1、

2、时间字段Type改为‘datetime’ ,Default改为‘current_timestamp’    ----------不然报错迁移不成功

      mysql数据库时间默认值  当前时间 current_timestamp

 

注意:时间字段设置默认值情况,type也需要改为datetime,只改时间的Default也会迁移失败的 

 

 

 16、狂点下一步,等待完成   -----成功导入(可以到mysql库中发现以有对应表)

 

 

二、使用Navicat客户端迁移过程

使用第一种方法方便,但是因为SQLyog界面原因所以被迫尝试使用Navicat导入

使用第一种目前可以正常生成ODBC文件(参考一生成相应文件)--或者直接使用navicat就行,不用sqlyog生成odbc文件

我这里SQLyog软件出现的问题(界面显示不完整--影响部分操作)

 

 第一种:不使用sqlyog生成odbc文件直接用navicat导入sqlserver表

不使用sqlyog生成odbc,直接使用navicat工具就可

打开Navicat Premium,新建一个同名的数据库,然后在表上点击“导入向导”。并选择“ODBC”。

 

 

 步骤4:
配置连接属性,包括服务器名称、登录服务器的用户名及密码、并选中要导入的 sql server 数据库。可见这是测试连接成功的,需要关闭 windows 的防火墙,不然会连接失败,也要注意服务器名称,它可能是ip地址,也可以是 主机名称,看用户具体情况而定

 

 

 

 

 

 

 

 

 

 

 

 

 

 第二种:使用sqlyog生成了odbc文件后使用下面方法

 1、选择目标库

2、选择导入向导的类型:ODBC    选择ODBC  (ODBC由SQLyog生成的文件)  

3、选择导入的向导的路径   --选择“Microsoft OLE DB Provider for SQL Server" 选项

        

4、输入sqlserver的数据库地址和用户名密码戴薪侧等信息,连接sqlserver 数据库

5、点击确定后会显示对应库中的所有表信息                                                              

        

----选择需要导入的表囊珠

6、下一步后选择‘新建表’   

可以编辑表名

 

7、下一步对表结构进行设计---注意时间类型数据   

将timestamp改为datetime类型(默认值目前不知道怎么设置)

8、

9、导入成功

导入多个表时,部分表没有导入成功情况:

导入多个表,全部导入成功情况:

 

三、过程中解决错误:

 

原因:

 

 解决:将目前最大的varchar类型的字段改为了text类型

 

----------------------------------                                                                                                                

---------------

到这里就结束了哦☺!

有错误的地方可以在下面评论区告诉逐梦哦!

我们一起共同学习共同进步! ( ̄▽ ̄)~*

---------

---------------

----------------------------------

posted @ 2022-09-22 14:42  じ逐梦  阅读(3505)  评论(0编辑  收藏  举报