最近在linux上面用mysqldump導(dǎo)出數(shù)據(jù),放在windows系統(tǒng)中導(dǎo)入就會(huì)出現(xiàn)中文亂碼,然后就會(huì)導(dǎo)致出現(xiàn): Unknown MySQL server host和Can't connect to the server的錯(cuò)誤。解決mysql導(dǎo)入導(dǎo)出數(shù)據(jù)亂碼問題就是統(tǒng)一導(dǎo)入導(dǎo)出的編碼,linux默認(rèn)的是utf8編碼,而windows是gbk編碼,所以會(huì)出現(xiàn)上面的亂碼問題。
解決mysql導(dǎo)入導(dǎo)出數(shù)據(jù)亂碼問題
首先要做的是要確定你導(dǎo)出數(shù)據(jù)的編碼格式,使用mysqldump的時(shí)候需要加上--default-character-set=utf8,例如下面的代碼:
mysqldump -uroot -p --default-character-set=utf8 dbname tablename > bak.sql
那么導(dǎo)入數(shù)據(jù)的時(shí)候也要使用--default-character-set=utf8:
mysql -uroot -p --default-character-set=utf8 dbname < bak.sql
這樣統(tǒng)一編碼就解決了mysql數(shù)據(jù)遷移中的亂碼問題了