首先你要确保,5.0和4.1的字符集编码是一样的,可以用mysql>show variables like '%char%';来查看. 方法有如下几种: 1.直接使用mysqldump导出成backup.sql,如果两边的数据库的字符集不一致,这里就要加上参数default-character-set=utf8,即:c:\mysql\bin>mysqldump -u name -p --default-character-set=utf8 dbname>c:\backup.sql 然后,再在目的数据库上c:\mysql\bin>mysql -u name -p<c:\backup.sql 如果提示不行的话,你就用文本编辑器打开backup.sql,把提示有错的行都去掉.这里也可以用source命令来进行恢复.mysql>source 'c:/backup.sql'; 上面的过程也可以通过工具mysql administrator来进行,运行后找到备份与恢复的菜单就可以了,要注意的就是字符集的选择,那里会字符集给你选择. mysqldump的其它参数可以通过c:\mysql\bin>mysqldump --help来查看.2.用工具mysql migration toolkit来进行数据的转移,前提是要安装j2re才行,按照它提示的步骤进行就可以了,另外就是要注意字符集的选择和mysql数据库允许远程登录.3.在5.0上执行mysql>show create table tbname;得到表结构,再复制到4.1上执行.然后,执行mysql>select * into outfile 'c:/backup.txt' from tbname;导出数据到backup.txt这个文件,接着把backup.txt复制到4.1的服务器那里,用命令mysql>load data infile 'c:/backup.txt' into table tbname;这里的tbname就是刚才的建表语句建立的那个表. 当然,select * into outfile 和load data infile这两个命令,还可以加上参数,fields enclosed by terminated by 和lines terminated by这些修饰符,更加详细的用法查看一下手册就可以了.4.如果都是myisam表类型的话,就可以直接打包后,复制过去,再解压就可以了.
方法有如下几种:
1.直接使用mysqldump导出成backup.sql,如果两边的数据库的字符集不一致,这里就要加上参数default-character-set=utf8,即:c:\mysql\bin>mysqldump -u name -p --default-character-set=utf8 dbname>c:\backup.sql
然后,再在目的数据库上c:\mysql\bin>mysql -u name -p<c:\backup.sql
如果提示不行的话,你就用文本编辑器打开backup.sql,把提示有错的行都去掉.这里也可以用source命令来进行恢复.mysql>source 'c:/backup.sql';
上面的过程也可以通过工具mysql administrator来进行,运行后找到备份与恢复的菜单就可以了,要注意的就是字符集的选择,那里会字符集给你选择.
mysqldump的其它参数可以通过c:\mysql\bin>mysqldump --help来查看.2.用工具mysql migration toolkit来进行数据的转移,前提是要安装j2re才行,按照它提示的步骤进行就可以了,另外就是要注意字符集的选择和mysql数据库允许远程登录.3.在5.0上执行mysql>show create table tbname;得到表结构,再复制到4.1上执行.然后,执行mysql>select * into outfile 'c:/backup.txt' from tbname;导出数据到backup.txt这个文件,接着把backup.txt复制到4.1的服务器那里,用命令mysql>load data infile 'c:/backup.txt' into table tbname;这里的tbname就是刚才的建表语句建立的那个表.
当然,select * into outfile 和load data infile这两个命令,还可以加上参数,fields enclosed by terminated by 和lines terminated by这些修饰符,更加详细的用法查看一下手册就可以了.4.如果都是myisam表类型的话,就可以直接打包后,复制过去,再解压就可以了.
Variable_name Value
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
5.0的编码如下:
Variable_name Value
character_set_client utf8
character_set_connection utf8
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
我不太懂,怎么样才能让他们编码一致????谢谢了!!