朋友申請了一個免費的 mysql 資料庫空間做測試,今天上午就把資料庫匯入試試,反正導了幾次都出錯。錯誤提示:
| 代碼如下 |
複製代碼 |
| /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; |
我本地的 mysql 版本是:5.1.45,編碼是 utf-8
伺服器 mysql 版本是:5.1.33,編碼我也轉了 utf-8 了。
剛開始以為是版本的問題,但是版本都是 5.1.x 的,應該相關不會很多。我又在自己的機器上再建一個庫匯入試試,發現可以成功,何解?還是問穀哥哥吧。
從瘋狂的小毛驢的百度 hi 找到解決問題的文章如下:
-------------------------------
匯入mysql資料庫時不能匯入
mysql 5n 向 4n 轉換中文亂碼的處理經驗
問題:由於4n版本的資料庫編碼為latin1,5n版本的資料庫編碼為utf8.導致。
去掉如下代碼
| 代碼如下 |
複製代碼 |
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */; |
使用phpmyadmin 匯入,檔案的字元集選擇latin1,一切正常。
經驗:使用phpMyadmin,以預設狀態匯出,用記事本將匯出的utf8編碼的檔案另存新檔ansi編碼。
開啟文字檔,替換所有gbk 為 latin1
其實我只是把那段
| 代碼如下 |
複製代碼 |
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */; |
去掉就執行成功了。