数据库 
首页 > 数据库 > 浏览文章

MSSQL转MYSQL,gb2312转utf-8无乱码解决方法

(编辑:jimmy 日期: 2024/11/15 浏览:3 次 )
使用软件:MySQLMigrationTool


提示数据过大,无法导入。修改my.cnf文件的max_allowed_packet = 100M以上。在windows操作系统中,my.cnf有可能显示不出来,需要用编辑器直接输入地址:盘符:\目录mysql教程binmy.cnf打开。

“there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause”,MSSQL一个表中有两个以上的日期时间字段使用了getdate()取默认值,去掉即可。

“BLOB/TEXT column '表名' can't have a default value”,此字段不允许使用默认值,去掉即可。

“The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs”,此表字段占用空间太大,适当减少其字段数量或长度。

运行软件后,点NEXT进入以下界面:

MSSQL转MYSQL,gb2312转utf-8无乱码解决方法

选择MS SQL SERVER,按提示填写,Connection String为:

jdbc:jtds:sqlserver://IP地址:端口(默认1433)/数据库教程名;user=用户名;password=密码;charset=gb2312;domain=

下一步为MySQL的信息,Connection String为:

jdbc:mysql://IP地址:端口(默认3306)/?user=用户名&password=密码&useServerPrepStmts=false&
characterEncoding=UTF-8

之后一路按提示进行。到此界面选择要忽略的表。

MSSQL转MYSQL,gb2312转utf-8无乱码解决方法

继续NEXT,如图所示进入此界面,此处设定字符编码,非常关键。

MSSQL转MYSQL,gb2312转utf-8无乱码解决方法

mssql 导入 mysql 不乱码 MySQLMigrationTool
MySQL GUI Tools 5.0 包含了 MySQLMigrationTool 这个工具可以完成我们的任务
此工具需要JRE update 8 以上的支持,可以去sun.com下载,速度很快。
http://www.java.com/zh_CN/download/manual.jsp
有的同学运行后导入mysql的结果是中文乱码 , 那是由于在一路next的中间有一个
选择编码的步骤, 此处务必选 user defined ,填上 charset=gbk,coll...tion的等于
gbk_chinese_ci , 就是把latin,和swidish的修改下,改成中文相应的。总之这里要看好
否则乱码就怪不了别人了。

然后一路next就是了。。。。
上一篇:SQLServer 数据导入导出的几种方法小结
下一篇:SQL 分布式查询、插入递增列示例