MySQL效能優化專題篇 3 4

2021-10-20 11:47:32 字數 768 閱讀 4527

innobuffer和事務

1,innodb_buffer_pool_size:innodb的快取,可以用於快取索引,同時還會快取實際的資料;

innodb_buffer_pool_size 引數用來設定innodb 最主要的buffer(innodb_buffer_pool)的大小,對innodb 整體效能影響也最大,可以按需要設定大一些;

2,innodb中的事務處理:

1,理解innodb事務機制:

1,事務在buffer中對資料進行修改;

2,事務的變化記錄在事務日誌中;

3,在合適的時機同步事務日誌中的資料到資料庫中;

2,所以什麼時候提交事務日誌檔案,對系統效能影響較大,可以通過設定innodb_flush_log_at_trx_commit來修改事務日誌同步時機:

1,innodb_flush_log_at_trx_commit = 0,每1秒鐘同步一次事務日誌檔案;

2,innodb_flush_log_at_trx_commit = 1,預設設定,每乙個事務完成之後,同步一次事務日誌檔案;

3,innodb_flush_log_at_trx_commit = 2,事務完成之後,寫到事務日誌檔案中,等到日誌覆蓋再同步資料;

注意,1效能最差,2不能完全保證資料是寫到資料檔案中,如果宕機,可能會有資料丟失現象,但效能最高;1,效能和安全性居中;

SQL優化專題篇

學習 持續更 1 如果表的型別是 myisam,那麼是 18 因為 myisam 表會把自增主鍵的最大 id 記錄到資料檔案裡,重啟 mysql 自增主鍵的最大 id 也不會丟失 2 如果表的型別是 innodb,那麼是 15 innodb 表只是把自增主鍵的最大 id 記錄到記憶體中,所以重啟資料...

MySQL效能優化之高階篇

4.1 索引是什麼,建立索引的原因 索引用於快速找出在某個列中有一特定值的行,不使用索引mysql必須從第一條記錄開始讀完整個表,直到找出相關的行,表越大查詢資料所花費的時間就越多,如果表中查詢的列有乙個索引,mysql能夠快速到達乙個位置去搜尋資料檔案,而不必檢視所有資料,那麼將會節省很大一部分時...

效能優化篇

一 在使用gallery控制項時,如果載入的過多,過大,就很容易出現outofmemoryerror異常,就是記憶體溢位。這是因為android預設分配的記憶體只有幾m,而載入的如果是jpg之類的壓縮格式,在記憶體中展開時就會占用大量的空間,也就容易記憶體溢位。這時可以用下面的方法解決 view p...