高效能MySQL(六) 選擇合適的儲存引擎

2022-07-20 20:27:16 字數 504 閱讀 8780

mysql可用的儲存引擎有很多,那怎麼選擇呢?在大多數情況下,選擇innodb引擎就對了,從mysql5.5版本開始將innodb引擎作為預設儲存引擎了(官方指明了方向)。

如果應用需要不同的儲存引擎,請先考慮以下幾個因素:

1、事務

如果需要事務,innodb(或者xtradb)是目前最穩定並且經過驗證的選擇。如果不需要事務,並且主要是select和insert操作,那麼myisam是不錯的選擇。

2、備份

3、崩潰恢復

資料量比較大的時候,系統崩潰後需要快速恢復。相對而言,myisam崩潰後發生損壞的概率比innodb要高很多,而且恢復速度也要慢。

4、特有的特性

有些應用可能依賴一些儲存引擎所獨有的特性或者優化,比如很多應用依賴聚簇索引的優化。另外,mysql中也只有myisam支援地理空間搜尋。

如何選擇合適的MySQL日期時間型別來儲存你的時間

構建資料庫寫程式避免不了使用日期和時間,對於資料庫來說,有多種日期時間欄位可供選擇,如 timestamp 和 datetime 以及使用 int 來儲存 unix timestamp。不僅新手,包括一些有經驗的程式設計師還是比較迷茫,究竟我該用哪種型別來儲存日期時間呢?那我們就一步一步來分析他們的...

高效能MySQL 第六章

查詢優化 索引優化 庫表結構優化 優化查詢嗎,實際上是優化其子任務。優化查詢 1。消除子任務 2。減少子任務執行次數 3。讓子任務執行的更快 查詢效能低下最基本的原因是訪問的資料太多。1 返回的結果 limit,避免返回不需要的資料 而不是返回全部結果集 select 是否需要返回全部列?2 掃瞄的...

MySQL學習筆記(六) 選擇合適的資料型別

char和varchar型別相似,都用來儲存字串,但是它們儲存和檢索的方式不同。char屬於固定長度的字元型別,而varchar屬於可變長度的字元型別。由於char是固定長度的,所以它的處理速度比varchar快得多,但是其缺點是浪費儲存空間,程式需要對行尾空格進行處理,所以對那些長度變化不大並且查...