mysql匯出的sql語句在處理百萬級資料的時候,可能匯入要花幾小時。在匯出時合理使用幾個引數,可以大大加快匯入的速度.
-e 使用包括幾個values列表的多行insert語法;
--max_allowed_packet=*** 客戶端/伺服器之間通訊的快取區的最大大小;
--net_buffer_length=*** tcp/ip和套接字通訊緩衝區大小,建立長度達net_buffer_length的行。
注意:max_allowed_packet 和 net_buffer_length 不能比目標資料庫的設定數值 大,否則可能出錯。
首先確定目標資料庫的引數值
mysql> show variables like 'max_allowed_packet';
mysql> show variables like 'net_buffer_length';
根據引數值書寫 mysqldump 命令,如:
# mysqldump -uroot -p123456 dbname -e --max_allowed_packet=16777216 --net_buffer_length=16384 > alldb.sql
ok,現在速度就很快了,主要注意的是匯入和匯出端的 max_allowed_packet 和 net_buffer_length 這2個引數值設定,弄大點就ok了
其實,最快的方法,是直接copy資料庫目錄,不過記得先停止 mysql 服務
如何加快mysql匯入資料的速度
我們在初始化資料時,如果資料量比較大的話,比如乙個初始化 sql檔案有3g,匯入的速度一般比較慢,為了加速匯入的速度,我們可以通過修改2個引數配置 針對儲存引擎為innerdb 1 臨時關掉innerdb的寫日誌功能 set sql log bin off 2 commit時,不進行flush 寫入...
如何加快oracle匯入速度
color darkred 傳統的imp命令在匯入時,如果只是僅處理資料,千萬條資料對oracle的處理來說根本就是 毛毛雨 啦,關鍵是在它匯入了資料後,而要對每個表重新做一次索引。一邊導一邊索引,一邊一條條commit,就好比你用乙個迴圈來insert 1萬條資料和你改用statemenet.ad...
如何加快oracle匯入速度
如何加快oracle匯入速度 傳統的imp命令在匯入時,如果只是僅處理資料,千萬條資料對oracle的處理來說根本就是 毛毛雨 啦,關鍵是在它匯入了資料後,而要對每個表重新做一次索引。www.2cto.com 一邊導一邊索引,一邊一條條commit,就好比你用乙個迴圈來insert 1萬條資料和你改...