1、使用mysqldump導出表結構,如:
mysqldump -d -u root -p 數據庫名 >/root/struct.sql
2、使用mysqldump以特定編碼導出數據(其中utf8為所需編碼,可按需修改),如:
mysqldump --default-character-set=utf8 -t -u root -p 數據庫名 >/root/data.sql
3、打開表結構轉存(/root/struct.sql),將所有CREATE TABLE中的編碼替換為所需編碼;
4、進入mysql控制臺,執行:
source /root/struct.sql
source /root/data.sql
即可完成。
導出表時,如果出現1044錯誤,添加 --skip-lock-tables 可以解決:
mysqldump -d -u root -p 數據庫名 --skip-lock-tables >/root/struct.sql
mysqldump --default-character-set=utf8 -t -u root -p 數據庫名 --skip-lock-tables >/root/data.sql