MySQL基礎、優化以及注意事項

一、數據庫引擎

  • innoDB
  • MyISAM

二、定位低效率、優化SQL語句的手段

  • 慢查詢日誌:日誌文件中查找
  • show processlist:實時查看正在進行的慢SQL語句,包括線程的狀態、是否鎖表等
  • show profiles:可以使用該命令分析SQL語句所經歷的耗時
  • trace:使用trace可以查看SQL優化器的信息
  • explain:該命令可以查出SQL語句在執行過程。比如是否使用了索引、執行順序、執行的條件等等。這個是分析SQL語句非常重要的手段

三、事務的隔離級別

1. 讀未提交(Read Uncommitted)

髒讀

2. 讀已提交(Read Committed)

不可重複讀

3. 可重複讀(Repeatable-Read)

innoDB引擎使用間隙鎖解決了幻讀問題

4. 串行化(Serializable)

三、鎖

3.1 行鎖

  • 共享鎖(讀鎖、Shared Locks即S鎖)

    -- 加鎖
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章