MySQL 基础模块的面试题总结
生活随笔
收集整理的這篇文章主要介紹了
MySQL 基础模块的面试题总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
說一下 MySQL 執行一條查詢語句的內部執行過程?
- 客戶端先通過連接器連接到 MySQL 服務器。
- 連接器權限驗證通過之后,先查詢是否有查詢緩存,如果有緩存(之前執行過此語句)則直接返回緩存數據,如果沒有緩存則進入分析器。
- 分析器會對查詢語句進行語法分析和詞法分析,判斷 SQL 語法是否正確,如果查詢語法錯誤會直接返回給客戶端錯誤信息,如果語法正確則進入優化器。
- 優化器是對查詢語句進行優化處理,例如一個表里面有多個索引,優化器會判別哪個索引性能更好。
- 優化器執行完就進入執行器,執行器就開始執行語句進行查詢比對了,直到查詢到滿足條件的所有數據,然后進行返回。
MySQL 提示“不存在此列”是執行到哪個節點報出的?
此錯誤是執行到分析器階段報出的,因為 MySQL 會在分析器階段檢查 SQL 語句的正確性。
MySQL 查詢緩存的功能有何優缺點?
MySQL 查詢緩存功能是在連接器之后發生的,它的優點是效率高,如果已經有緩存則會直接返回結果。 查詢緩存的缺點是失效太頻繁導致緩存命中率比較低,任何更新表操作都會清空查詢緩存,因此導致查詢緩存非常容易失效。
如何關閉 MySQL 的查詢緩存功能?
MySQL 查詢緩存默認是開啟的,配置 querycachetype 參數為 DEMAND(按需使用)關閉查詢緩存,MySQL 8.0 之后直接刪除了查詢緩存的功能。
MySQL 的常用引擎都有哪些?
MySQL 的常用引擎有 InnoDB、MyISAM、Memory 等,從 MySQL 5.5.5 版本開始 InnoDB 就成
總結
以上是生活随笔為你收集整理的MySQL 基础模块的面试题总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第 6-1 课:Spring 核心 +
- 下一篇: JVM 面试题汇总