国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

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

2024-07-24 13:00:36
字體:
來源:轉載
供稿:網友

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

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

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

  3)可以對myisam表并行插入Concurrent_insert系統變量可以被設置用于修改concurrent-insert處理。該變量默認設置為1。如果concurrent_insert被設置為0,并行插入就被禁用。如果該變量被設置為2,在表的末端可以并行插入,即便該表的某些行已經被刪除。

  4)使用插入延遲

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

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

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 紫阳县| 益阳市| 洪湖市| 黄骅市| 毕节市| 宝坻区| 忻州市| 大关县| 尚志市| 克山县| 霞浦县| 常山县| 鄂托克旗| 吐鲁番市| 五大连池市| 融水| 五大连池市| 互助| 宣城市| 陇川县| 佛山市| 织金县| 安泽县| 高唐县| 新疆| 斗六市| 株洲县| 会宁县| 南投市| 景洪市| 富阳市| 孟州市| 化州市| 牡丹江市| 乌拉特中旗| 衢州市| 合阳县| 平和县| 桂林市| 罗平县| 察哈|