熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> MySQL >> 正文

優化MySQL插入方法的五個妙招

2013-11-23 21:08:19  來源: MySQL 

  以下是涉及到插入表格的查詢的種改進方法

  )使用LOAD DATA INFILE從文本下載數據這將比使用插入語句快

  )使用帶有多個VALUES列表的INSERT語句一次插入幾行這將比使用一個單行插入語句快幾倍調整bulk_insert_buffer_size變量也能提高(向包含行的表格中)插入的速度

  )可以對myisam表並行插入Concurrent_insert系統變量可以被設置用於修改concurrentinsert處理該變量默認設置為如果concurrent_insert被設置為並行插入就被禁用如果該變量被設置為在表的末端可以並行插入即便該表的某些行已經被刪除

  )使用插入延遲

  如果你的客戶不能或無需等待插入完成的時候這招很有用當你使用MySQL存儲並定期運行需要很長時間才能完成的SELECT和UPDATE語句的時候你會發現這種情況很常見當客戶使用插入延遲服務器立刻返回如果表沒有被其他線程調用則行會列隊等待被插入使用插入延遲的另一個好處就是從多個客戶插入的情況會被綁定並記錄在同一個block中這將比處理多個獨立的插入要快得多

  )插入之前將表鎖定(只針對非事務處理型的表)

  這將提高數據庫性能因為索引緩沖區只是在所有的插入語句完成後才對磁盤進行一次刷新通常情況下有多少個插入語句就會有多少次索引緩沖區刷新如果你可以用一個插入語句實現所有行的插入則無需使用顯式鎖定語句

  要想更快地對事務型表插入你應該使用START TRANSACTION和COMMIT語句而不是LOCK TABLES語句


From:http://tw.wingwit.com/Article/program/MySQL/201311/29642.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.