工具選擇
一。sqlyog 這個工具還是很強大的,但是面對5個G的資料庫來說,也只能罷工了,簡單說,本機匯入可以,從本機匯入伺服器不行。
二。phpadmin 內建的這個挺人家說還行,但是最後沒用過,原因是看不見,因為最多50M,雖然修改設定檔可以上傳但是5個G還是算了吧,沒那個信心。
三。還有一個是一個PHP指令碼。好像是德國人寫的。這個東西,也是匯入資料的,怎嘛說呢,本人是沒實驗成功。但是網上叫好一片,我是5G資料沒點成功,這是折騰了第二天了。
四。資料庫分割匯入這個我也用到了,每個分割100M,汗一下。不能再小了。。。分割出60多個SQL,還是會報各種錯誤。這個工具也失敗了。如果你想用,去網上找找吧mysql分割
下面的圖片就是匯入成功後的圖片了,
GZ壓縮式1.3G解壓後變成4.52G。匯入到資料庫,就變成6.6G了。。。。。
最後還是用命令導進去的
mysql -uroot -p shujukuming<XXXXX
再說下錯誤吧
簡單的說就是各種錯誤都能遇到
錯誤1
ERROR 5 (HY000) at line 318: Out of memory (Needed 1681784 bytes)
這個錯誤能報很多 是使用 -f 報出來的,大致意思是記憶體不足,
解決辦法 :mysql -uroot -p shujukuming -f<XXXXX
如果你不介意損失幾條資料的話就用上面的方法吧
錯誤2
ERROR 1062 (23000) at line 30: Duplicate entry '1' for key 'PRIMARY'
這個錯誤是索引值錯誤的意思
解決辦法:網上說是要清空資料表資料,可是在用資料分區的時候主鍵和分區時不能同時使用,把主鍵在更改下就行
錯誤3
mysql error nr.2006-mysql server has gone away
這個錯誤是 上傳限制的問題需要修改設定檔
設定檔在 linx叫 my.conf 在windows叫my.ini
這裡面的東西修改要小心了亂改是不行的。
簡單的就是修改幾個配置就行了
max_allowed_packet=166666m 這個是限制檔案大小的由於要上傳6個G所以改成1111111M 額應該夠了吧
wait_timeout=288000000 等待逾時。。看事改吧,我在後面加了好幾個0.。。
interactive_timeout= 288000000運行逾時。。。。看事改吧,我在後面加了好幾個0.。。
除了幾個就不要修改其他的設定檔了,注意重啟下伺服器
錯誤4
這個是個很低級的錯誤
mysql 版本不對 現在流行的都是5.0+
注意高版本不能匯入低的版本,5.5+是不能匯入到5.0+的有些查詢語句不支援。
轉帖請標明來源謝謝 http://skss.blog.163.com/
以上就是本人遇到的各種問題,如有其它問題請多多指教,畢竟6個G的檔案啥sql也打不開