(转)如何将数据库从SQL Server迁移到MySQL
一、迁移Database Schema。
首 先使用Sybase Powerdesigner的逆向工程功能,逆向出SQL Server数据库的物理模型。具体操作是在Powerdesigner中选择“File”,“Reverse Engine”再选择Database,将DBMS选择为SQL Server,如图:
然后选择数据源,也就是要具体连接到的SQL Server数据库服务器,然后选择要逆向的数据库名,比如选中“WSS_Content_80”如图所示:
单击确定即可生成物理模型图:
然后单击“Database”菜单下的Change Current DBMS修改当前的DBMS,改为MySQL 5.0,
单击确定后即可生成MySQL的物理模型 然后单击“Database”菜单下的“Generate Database”生成数据库脚本文件。
接下来是手工修改下生成的脚本的内容。
将其中的dbo.全部替换成空
将create user这样的语句删除掉。
如果有些字符在MySQL中是关键字,那么必须使用“`”(键盘上数字1左边那个符合)符合框起来。
加上MySQL所需要的存储引擎比如每个建表语句后跟上:
ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_general_ci;
将生成的脚本在MySQL中去运行一次即可创建数据库。
二、迁移数据内容
数据内容只能通过生成INSERT语句的方式来做。
首先使用SSMS的“生成脚本”功能(在数据库上右键,选择“任务”“生成脚本”选项),可以为SQL Server数据库中的数据生成插入脚本。
首先选择要迁移数据的表,这里我们全选所有的表:
然后单击下一步,选择将脚本保存到新的查询窗口:
单击“高级”选项,在高级选项窗口中选择“要编写脚本的数据的类型”为仅限数据:
然后“确定”再下一步下一步即可生成INSERT脚本文件。
修改生成的脚本文件,主要有以下几项修改:
使用批量替换的方式去掉[ ]这是SQL Server的符合,在MySQL中不用这个。
使用批量替换的方式去掉dbo.
有些单词在MySQL中是关键字的,那么需要使用“`”引起来。
关于Datetime类型的数据,需要手工修改下,SQL Server默认生成的是这样的语句,在MySQL中是没办法解析的:
CAST(0x00009EEF00000000 AS DateTime)
为每一行添加一个;表示一个插入语句结束。这个分号在SQL Server中可以不需要,但是在MySQL中是必须的。简单的方法是使用高级的文本编辑器(比如Notepad++),将\r\n替换为;\r\n即可。
(转)如何将数据库从SQL Server迁移到MySQL的更多相关文章
- 从Microsoft SQL Server迁移到MySQL指南
转自 https://www.mysql.com/why-mysql/white-papers/sql-server-to-mysql-zh/ 由于 MySQL 将节约成本.自由选择平台.特性丰富等优 ...
- SQL Server 迁移至MySQL 关键步骤的梳理总结
迁移主要是通过Navicat工具来实现的.迁移工具的选定在此不讨论. 迁移前准备 1.提前通知DBA\SA\BI等,并确认发布计划及数据库迁移方案. 2.梳理出SQL Server DB 中影响业务 ...
- 使用sqlyog将sql server 迁移到mysql
使用软件工具sqlyog(64位) sqlyog 迁移步骤 1.使用sqlyog连接目标数据库 连接目标数据库 2.选择目标数据库(需要先把表结构建好,从SQL Server同步表结构也可以使用工具, ...
- asp.net mvc entityframework sql server 迁移至 mysql方法以及遇到的问题
背景: 我原来的项目是asp.net mvc5 + entityframework 6.4 for sql server(localdb,sql server),现在需要把数据库切换成mysql,理论 ...
- abp项目 从sql server迁移至mysql
官方资料:https://aspnetboilerplate.com/Pages/Documents/EF-MySql-Integration 实验发现,还差了两步 整理一下,步骤如下: 1.引用My ...
- 【转】sql server迁移到mysql
SQL Server转换为MySQL工具,用了一下 感觉蛮不错的. 下载地址:https://www.jb51.net/softs/209207.html#downintro2 分享上来,同时也以便记 ...
- SQL Server 迁移数据库 (一)导入和导出
今天正好换服务器,记录一下迁移数据库的过程. 以前经常用备份还原法,今天试试‘SQL Server 2016 导入和导出数据’这个看怎么玩. 1. 建数据库结构 1.1 在需要迁移的数据库名字上右击, ...
- VMWare vCenter 4.x 数据库由SQL Express 迁移至SQL Server 2008 R2
默认安装下的 VMware vCenter 4.x 会在本地安装 SQL Express 2005 版本,如果你有需要迁移至 Full SQL Server版本比如 SQL Server 2008 R ...
- SQL Server 迁移数据到MySQL
一.背景 由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Server的数据转移到MySQL:由于涉及的表比较多,所以想在MySQL中生成对应 ...
随机推荐
- PHPCMS 实现上一篇下一篇的几种方法
1第一种 <p>上一篇:{get sql = "select contentid,catid,url,titlee from phpcms_content where conte ...
- 并发异步处理队列 .NET 4.5+
namespace Test { using System; using System.Threading; using System.Threading.Tasks; using Microshao ...
- 本人经过测试认为最简单最好的popupwindow样式
<shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- solid 设置 ...
- Android 在地图上画矩形
point1=map.toMapPoint(400,426); point2=map.toMapPoint(600,640); initextext = new Envelope(point1.get ...
- 一张图入门python
- POJ 1182 食物链 (经典带权并查集)
第三次复习了,最经典的并查集 题意:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形.A吃B, B吃C,C吃A. 现有N个动物,以1-N编号.每个动物都是A,B,C中的一种,但是我们 ...
- Liferay 6.2 改造系列之五:修改默认站点的页面内容
相关页面可以通过/portal-master/portal-impl/src/portal.properties文件配置进行修改: 登录页: ## ## Default Landing Page ## ...
- 最值得学习的10个C语言开源项目
最好别下载最新版,因为代码量比较大,可以下载很早的版本 搜索词:开源 C Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我 ...
- OAuth2.0 在 SSO中的应用~
关于OAuth2.0的介绍,请看下面链接(讲的挺好的): http://blog.csdn.net/seccloud/article/details/8192707 我的理解: 一共四个角色,A:Cl ...
- light oj 1422 Halloween Costumes (区间dp)
题目链接:http://vjudge.net/contest/141291#problem/D 题意:有n个地方,每个地方要穿一种衣服,衣服可以嵌套穿,一旦脱下的衣服不能再穿,除非穿同样的一件新的,问 ...