一般的資料備份用 :mysql路徑+bin/mysqldump -u 使用者名稱 -p 資料庫名 > 匯出的檔名
資料還原是:到mysql命令列下面,用:source 檔名;的方法。
但是這種方法對大資料量的表進行操作就非常慢。因為他不僅匯出了資料還匯出了表結構。
在針對大資料量的表時,我們可以用infile和 outfile來操作。
outfile匯出資料庫資料的用法:
下圖我們可以看到6百多萬資料35秒就搞定了:
下面我們看看infile的語法:
在infile匯入資料的時候,我們還可以做一些優化。我們可以用
alter table table_name disable keys 關閉普通索引。等資料匯入玩,再用:
alter table table_name enable keys 來開啟普通索引。這樣就不會邊匯入資料,邊整理索引的二叉樹兒影響導資料的效率。
如果可以保證 資料的正確性,我們可以將表的唯一索引也關閉,之後再開啟,不是每條資料就算是唯一的他都要去檢測一遍。命令:
set unique_checks=0; #關閉唯一校驗
set unique_checks=1;#開啟唯一校驗
如果是innodb儲存引擎,我們還可以set auto commit=0;關閉自動提交,來提高效率。innodb是按主鍵的順序儲存的,我們將其主鍵順序排列也可以提高效率。
下面我們對myisam引擎的表做個測試,我們先不關索引,匯入資料(用了近4分鐘):
然後我們先把索引關閉試試(只用了一分鐘多一點,快了不少啊!摸摸大!):
mysql 快速匯出 Mysql 大量資料快速匯出
mysqldump u root p q e t webgps4 dn location2 dn location2.sql mysqldump u root p q e t single transaction webgps4 dn location2 dn location2.sql sourc...
MySQL 快速匯入大量資料 資料收集
一 load data infile 二 當資料量較大時,如上百萬甚至上千萬記錄時,向mysql資料庫中匯入資料通常是乙個比較費時的過程。通常可以採取以下方法來加速這一過程 一 對於myisam型別的表,可以通過以下方式快速的匯入大量的資料。alter table tblname disable k...
MySQL 快速匯入大量資料 資料收集
一 load data infile 二 當資料量較大時,如上百萬甚至上千萬記錄時,向mysql資料庫中匯入資料通常是乙個比較費時的過程。通常可以採取以下方法來加速這一過程 一 對於myisam型別的表,可以通過以下方式快速的匯入大量的資料。alter table tblname disable k...