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

时间:2021-05-24

使用软件: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进入以下界面:

选择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

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

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

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

然后一路next就是了。。。。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章