Navicat是卓软数码科技有限公司生产的一系列MySQL、mariadb、Oracle、SQLite、PostgreSQL及MicrosoftSQLServer的图形化数据库管理及发展软件。它有一个类似浏览器的图形使用者接口,支援多重连线到本地和远端数据库。它的设计合乎各种使用者的需求,从数据库管理员和程序员,到各种为客户服务并与合作伙伴共享信息的不同企业或公司。引子维基。
公司大部分数据平台是存放在SQLServer数据库中,大家都知道SQLServer数据库是按照CPU核数来收费的,昂贵的费用对于公司来说是笔不少的开支。需要将将SQLServer数据迁移到MySQL中,业务慢慢转向到Linux平台和使用开源软件来解决。
下面来说说用navicat工具来将SQLServer数据迁移到MySQL上:
1.新建需要迁移的数据库
2.打开数据库,点击导入向导
3.选择数据导入格式
4.选择数据源
5.连接属性
6.选定要迁移的表
7.定义目标表
8.更改实际情况对目标表进行更改
9.选择导入模式
10.开始导入
11.导入后结果
至此,迁移完成,可以更改实际情况再对迁移后的表进行更改。
将SQLServer数据迁移到MySQL需要注意的一些问题
1、唯一索引的不同,sqlserver的唯一索引的字段只能允许存在一个null值,而mysql,一直oracle中唯一索引对应的字段都允许存在多个null值。
2、存储过程的语法存在很大的不同,存储过程的迁移是最麻烦的,需要仔细修改。
3、程序中部分写的SQL语句由于语法的不同也要相应的修改。
将SQLServer数据迁移到MySQL的常见方法
1、使用SQLyog迁移
优点
该迁移方法很简单,灵活,迁移时,可以进行字段的修改,比如在sqlserver中原来是datetime,然后迁移到mysql时你可以配置成timestamp;成功率很高;
缺点
迁移很慢!这是该方法最大的缺点,如果表的数据量达到几十万行,甚至几百万行,你会发现迁移起来真的很慢。明显比其他迁移方法慢很多。
2、使用powerdesigner和sqlserver的脚本导出功能来迁移
(1)、该方法首先使用powerdesigner,对sqlserver数据库,进行逆向工程,得到E-R图,然后生成MySQL的建表语句。完成数据库结构的迁移;当然表结构的迁移,不使用powerdesigner一样也是可以的。比如我将表结构导出成语句,然后手动进行修改,然后在MySQL中运行,也是一样的;
(2)、然后使用sqlserver的工具SSMS,将sqlserver数据库中的表的数据,导出成insert语句,每个表对应导出一个文件,然后对文件进行一些处理,然后导入到MySQL数据库中。
3、使用OracleMySQLServer官方的workbeach工具进行迁移
(1)、在workbench连接sqlserver时,用户需要有viewanydatabase的权限。不然workbench无法访问sqlserver的表结构的元数据,从而无法进行迁移。
(2)、还有使用Navicat来进行迁移的方法,方法和SQLyog是类似的。
小编结语:
更多内容尽在课课家教育!
¥48.00¥180.00
¥48.00¥180.00
¥199.00
¥29.90
¥199.00
¥798.00