总体方案:从sql server 中导出建立
数据库的sql文件,在powerdesigner中生成PDM,再将PDM转化为MySql的版本,然后生成数据库的sql,在MySql中导入sql文件生成数据库。将sql server 表中已存在的数据导出为CSV文件,将CSV文件导入MySql中实现数据迁移。
用到的工具:PowerDesigner(下载安装,安装图解网上搜)
1.在sql server 2005中,右键点击数据库→任务→生成脚本,按提示点击下一步,最后将脚本保存到文件xxx.sql
2.打开powerdesigner,点击文件→reverse engineer→database
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104817271.png)
选择数据库类型为sql server 2005
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104817363.png)
选择第一步中生成的sql文件,点击确定,生成sql server 2005版本的PDM文件
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104817395.png)
3.powerdesigner中,点击工具→generate physical data model
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104818376.png)
选择类型为
mysql
5.0,点击确定生成mysql 5.0版本的pdm,如果出现如下错误
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104818348.png)
将detail选项卡中的check model的打钩去掉
4.powerdesigner中选择 数据库→generate database
![用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql 用PowerDesigner工具将sql <wbr>server <wbr>2005数据库导出到mysql](http://up.2cto.com/2012/0901/20120901104819704.png)
点击确定生成Mysql 5.0版本的数据库脚本文件
5.mysql 中,用source命令从sql文件创建相关的表 “source d:/xxx.sql”检查上一步骤中生成的脚本文件,由于是从sql server中生成,数据库名称可能是dbo,将dbo改为你打算创建的数据库名称
6.sql server中,,右键点击数据库→任务→导出数据 按提示导出为excel文件,如:xx.xls
7.excel中打开,选择文件→另存为csv文件
毋须保留列名,方式选择utf-8,否则可能出现乱码的问题
8.再将csv文件导入mysql,有多种方式,图形化界面SQLyog中,直接右键表→从CSV中导入数据 即可