簡體   English   中英

MySQL轉儲和加載時間之間的不合理差異

[英]Unreasonable difference between MySQL dump and load times

我正在將數據庫轉儲到文件中(通過gzip進行轉儲),創建一個300MB的dump.sql.gz文件大約需要2分鍾。

當將文件加載回MySQL時(轉儲從刪除表開始),加載大約需要30分鍾!!

如此巨大的時間差異可能是什么原因? 有什么通用技巧可以大大減少加載時間?

謝謝。

原因之一是寫入數據庫要比從數據庫讀取擴展得多。 數據庫必須確保寫操作是事務性的,它必須更新索引,擴展文件等。

另一個原因是MySQL轉儲您數據的SQL版本,就像在一個大文本文件中insert大量insert語句一樣。 太慢了 來自其他數據庫的備份通常是二進制文件,可以在原始數據庫上寫入,這比一次還原一行要快。

除了Andomar的答案外,您還將在轉儲中添加“ --delayed-insert”和“ --extended-insert”,從而獲得顯着的改進。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM