我的原數據庫是3.23版本的.前幾天因為一個論壇轉移.必須用5.1的.於是就是升級了數據庫.論壇是正常的.可以是原來的一個老庫因為是3.23下面的.gb2312的.不管怎麼樣導入到新庫都是亂碼.後來查找了各方面資料.借鑒了discuz的一個帖子.終於升級成功.現把心得總結出來。
環境:
1.老庫是mysql 3.23,新庫是MySQL-5.1.33-win32.msi .數據庫名是 cxinbao
2.我本機是xp sp2
首先在本地安裝3.23數據庫.把服務器上的數據庫在data目錄下直接打包到本地.復制到本地數據庫所在data目錄下.同版本的.或者.4.1以下的版本直接拷貝目錄即可.4.1以下的要轉移到4.1及以上版本.則不能直接拷貝.會涉及到字符集問題.只能和MySQLdump先導出.再導入.
1.安裝完3.23.然後cmd進入數據庫所在bin目錄.然後運行 導出數據庫為sql文件
MySQLdump -uroot -p --default-character-set=gbk cxinbao >cxinbao.sql
2.然後原庫下的表刪除掉.再運行.把剛才導出的sql導進庫裡.
MySQL -uroot -p --default-character-set=latin1 -f cxinbao <cxinbao.sql
3.再把剛才導入的數據庫.再導出為sql,
MySQLdump -uroot -p --default-character-set=latin1 cxinbao >cxinbao.sql
4.在服務裡把3.23的mysql服務器停止掉.然後安裝mysql5.1數據庫.,編碼用utf-8,把mysql3.23數據庫bin目錄下的cxinbao.sql拷貝到MySQL5.1數據庫bin目錄下.備用,然後用cmd轉到MySQL5所在的bin目錄下.運行
MySQL -uroot -p --default-character-set=gbk -f cxinbaonew<cxinbao.sql
這樣cxinbaonew數據庫就是你轉移成功的數據庫了.這個庫要事先建好.