不同编码数据库间的备份与恢复中遇到的中文乱码有关问题
不同编码数据库间的备份与恢复中遇到的中文乱码问题
案例如下:
A机器的mysql数据库中的database Test编码为gbk,B机器的characterset如下:
mysql> show variables like "%character%"; +--------------------------+----------------------------+ | 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 | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+
首先,从A中导出数据:
mysqldump -u User -p Password --default-character-set=utf8 Test > test.sql
然后,在B机器上
mysql -u User -p Password -e "use Test;set character_set_database=gbk; source test.sql"