环境:mysql5.0 , mssqlserver2000
任务是把mssqlserver2000的数据库名为test导入到mysql5.0中。
导入时参照 红色部分方法(是网上好多人这么导入的)
但是mysql5.0里的中文部分还是有乱码问题,这是为什么呢?
其中红色字体方法说:Object Mapping设置Set Parameter
其中migration of type mssql schema / table / view / routine都设置
选择user defined,加入charset=utf8, collation= utf8_general_ci
图片截图如图1
用MySQL Migration Toolkit工具把sql server2000的表导到mysql中,但中文全部是乱码.
并且使用mysql-front 和mysql administrator查看器查看都是乱码,图片如图2 和图3
但是我在cmd下使用命令查询编码显示正常。。
不知道什么原因
处理方法
首先你mysql的字符集应该设置成这样:
mysql> show variables like '%char%';
+--------------------------+--------------------------+
| Variable_name | Value |
+--------------------------+--------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | d:\mysql\share\charsets\ |
+--------------------------+--------------------------+
8 rows in set (0.08 sec)
然后,用使用mysql marigation toolkit, 一直到出现Set Parameter那个界面,点击进去,选择user defined,加入charset=utf8, collation= utf8_general_ci
这样设置好后,就不会出现乱码了.
-----------------------------------------
操作到Object Mapping(可以从左边的流程图上看到)这一步,界面右边就会有一个"Set Parameter>>"的按钮,点击进去里面设好就可以了
--------------------------------------
我的就五步,
1.连接SQL SERVER.
2.连接Mysql.
3.选择数据库.
4.选择表.
5.数据库转换进度.