MySQL 效能調優之儲存引擎

2021-09-25 07:18:48 字數 857 閱讀 5117

原文:       

mysql效能調優中,對myisam儲存引擎的優化。

在優化myisam儲存引擎中,需要考慮的點如下:

盡量索引,myisam只快取索引不快取資料;

根據實際需求,調整讀寫優先順序;

延遲插入,使用 insert delay,減少和 select 競爭

資料順序操作,讓insert全部到尾部,減少和select競爭;

分解大操作,將大操作分解成多步小操作,防止長時間鎖定;

降低併發數,表鎖會導致競爭激烈,通過排隊機制提高效率;

充分利用 query cache:對於靜態資料,盡量使用 query cache。

另外myisam不需要事務支援,並且以讀為主。myisam的讀效率較高,但myisam有乙個弊病,那就是表容易壞,需要定期repair。

1.需要事務支援;

2.併發較大;

3.資料變更比較頻繁;

4.資料一致性要求較高;

5硬體裝置記憶體較大,遠大於索引資料量;

在優化innodb儲存引擎中,需要考慮的點如下:

1.主鍵盡可能小:所有非主鍵索引都需要儲存主鍵;

2.索引整合,減少冗餘索引,降低資料量;

3.避免全表掃瞄,因為會導致表鎖;

4.盡量自己控制事務,關閉aotucommit;

5.盡量快取所有資料和索引;

6.合理設定innodb_flush_log_at_trx_commit;

7.充分利用索引避開表鎖;

8.避免主鍵更新。

innodb和myisam各有所長,沒有哪個比哪個好,只要能解決實際問題就好。在生產環境中使用哪種儲存引擎需要經過多方面的考慮。實際上,很多公司是兩種儲存引擎混用的。

MySQL效能調優之Memory or SSD

當乙個傳統的向外擴充套件的方式對於mysql來講變得流行,看看我們不得不擴充哪一方面 便宜的記憶體?快速儲存?更好的電源效率?將會變得非常有趣。這裡確實有很多種選擇 我每週大概會遇到乙個客戶使用fushion io 卡。然而,我卻看到了他們乙個有趣的選擇 他們選擇購買乙個ssd,當他們每秒仍然能讀取...

mysql之sql效能調優

一 優化查詢sql語句第一課 1 理解eqp含義 執行sql語句時生成的qep並不確定,每次執行相同的sql也可能會由於周圍環境因素的變化而生成不同的qep 2 通過explain來分析sql語句 理解 key的含義 rows的含義 3 驗證表結構和確認表大小 驗證表結構 show create t...

MySQL效能調優之Memory or SSD

當乙個傳統的向外擴充套件的方式對於mysql來講變得流行,看看我們不得不擴充哪一方面 便宜的記憶體?快速儲存?更好的電源效率?將會變得非常有趣。這裡確實有很多種選擇 我每週大概會遇到乙個客戶使用fushion io 卡。然而,我卻看到了他們乙個有趣的選擇 他們選擇購買乙個ssd,當他們每秒仍然能讀取...