MySQL-常用引擎
來自:https://www.cnblogs.com/xujishou/p/6343431.html ;https://www.cnblogs.com/laowenBlog/p/8405614.html ;https://www.cnblogs.com/lqcdsns/p/7858279.html
一:引擎類型
1.InnoDB存儲引擎
是一個健壯的事務型存儲引擎,該引擎已經被很多互聯網公司使用,為用戶操作非常大的數據存儲提供了一個強大的解決方案,InnoDB還引入了行級鎖定和外鍵約束。
特點:
1.更新:適合多重并發的更新請求;
2.事務:支持標準事務;
3.恢復:能夠自動從災難中恢復;
4.外鍵:支持外鍵;
5.支持自動增加列AUTO_INCREMENT屬性。
2.MyISAM存儲引擎
其速度比InnoDB類型更快,不支持事務,不支持外鍵,崩潰后無法安全恢復。對事務完整性沒有要求或者以SELECT、INSERT為主的應用基本都可以使用這個引擎來創建表。
特點:
1.不支持事務,不具備(原子性、一致性、分離性、永久性)特性; 2.表鎖定形式(更新時鎖定整個表、雖然鎖定的實現成本很小,但大大降低了并發性能); 3.讀寫相互阻塞(寫入的時候阻塞讀取、讀取的時候阻塞寫入、但是讀取不會阻塞讀取); 4.讀取速度快、占用資源比較少; 5.不支持外鍵約束、只支持全文檢索; 6.是MySQL5.5.5版本之前的默認存儲引擎。二:如何選擇
大部分情況下,InnoDB都是正確的選擇,可以簡單地歸納為一句話“除非需要用到某些InnoDB不具備的特性,并且沒有其他辦法可以替代,否則都應優先選擇InnoDB引擎”。
除非萬不得已,否則不建議混合使用多種存儲引擎,否則可能帶來一系列復雜的問題,以及一些潛在的bug和邊界問題,如果應用需要不同的存儲引擎,請先考慮以下幾個因素:
事務:
? ? 如果應用需要事務支持,那么InnoDB(或者XtraDB)是目前最穩定并且經過驗證的選擇。
備份:
? ? 如果可以定期地關閉服務器來執行備份,那么備份的因素可以忽略。反之,如果需要在線熱備份,那么選擇InnoDB就是基本的要求。
恢復:
?
三:查看引擎
show engines;
轉載于:https://www.cnblogs.com/lbky/p/10042950.html
總結
以上是生活随笔為你收集整理的MySQL-常用引擎的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EasyTrack项目管理软件的四大版本
- 下一篇: 网易云基于Prometheus的微服务监