Mysql

mysql超級慢

  • June 29, 2014

我有一個下載的電影數據庫,大小約為 51mb。其中一張表有超過 75 萬條記錄(所有單獨的插入語句(我認為這很糟糕))。其餘的還不錯,第二大表大約有 10k 條記錄。

談到 mysql,我是個超級菜鳥,但我知道花一個多小時插入 40k 條記錄是不對的。

我環顧四周,有人說要增加“innodb_buffer_pool_size”,我將其設置為 4G(不知道是否太多),但性能提升仍然不大。

你們有什麼建議可以給我加快這個過程嗎?

注意:這是在我的家用 PC 上作為測試數據庫執行的(不確定我是否應該給出規格)。

如果我忘記了文件或程式碼,請告訴我,這是我第一次使用 dba。

提前致謝!

  • 使用 LOAD DATA INFILE 語句
  • 如果不能,請嘗試對盡可能多的行使用一個 INSERT 語句:
INSERT INTO table (COLUMN1, COLUMN2) 
VALUES 
   (1, "row1"), 
   (2, "row2"),
   -- Snip
   (10000, "row1000");

缺點:您的 750k 行可能有錯誤,因為您的查詢對於預設設置來說太大了。您將不得不創建許多包含許多行值的 INSERT 語句。

這兩種方法應該已經可以幫助您而無需任何額外的更改,並且對於我的小數據集(100k)來說已經足夠了。

我找到了一篇關於如何加快插入速度的文章,其中也談到了對 innodb 的額外優化。(對不起,我的名聲不允許我添加額外的連結……)

引用自:https://dba.stackexchange.com/questions/69267