MySQL 作爲主流的數據庫,是各大廠面試官百問不厭的知識點,但是需要了解到什麼程度呢?僅僅停留在 建庫、創表、增刪查改等基本操作的水平可不夠。在面試後端開發的時候,一連幾個問題,簡直會被問到一臉懵逼。
MySQL 語句怎麼優化?分庫,分表都適合哪些場景?講講 InnoDB 如何使用 B+ 樹存儲的?
一般來說,準備 MySQL 面試 ,無非要從這幾塊進行準備:查詢、存儲、事務、鎖和性能調優。不少朋友苦於蒐集資料耗時耗力,很難 cover 住面試官的考覈角度。爲了能讓大家在準備面試時少走彎路,這裏特別熬夜快一週了,精心整理各大廠 MySQL 面試題的主流考點,經過多次迭代,最終形成了這份MySQL面試文檔及學習筆記,從中你可以學到:
- 收穫完整的 MySQL 學習路徑
- 針對實際場景分析數據庫問題,進行性能調優
- 吸收業界專家的經驗分享,加速 MySQL 技能進階
- 加深 MySQL 底層和核心技術的理解
- 輕鬆應對面試中 MySQL 問題
MySQL基礎到高級到調優筆記
學習筆記主要分爲12個模塊,具體有:
由於篇幅字數原因,在這隻展示詳細目錄及內容的截圖了,有需要的朋友可以再文末免費獲取!
MySQL重要性質
MySQL安裝及Mysq|權限
MySQL數據類型
MySQL架構
存儲引擎
鎖
事務
業務設計
慢查詢
索引與執行計劃
SQL優化
由於篇幅字數原因,以上的MySQL學習筆記和MySQL面試解析108題文檔已經整理成離線文檔了,有需要的朋友麻煩點擊直達免費獲取
MySQL面試解析108題文檔
這份面試文檔共5個模塊,108道題解析分別有以下模塊
MySQL基礎模塊
- 說一下 MySQL 執行一條查詢語句的內部執行過程?
- MySQL 提示“不存在此列”是執行到哪個節點報出的?
- MySQL 查詢緩存的功能有何優缺點?
- 如何關閉 MySQL 的查詢緩存功能
- MySQL 的常用引擎都有哪些?
- MySQL 可以針對表級別設置數據庫引擎嗎?怎麼設置?
- 常用的存儲引擎 InnoDB 和 MyISAM 有什麼區別?
- InnoDB 有哪些特性?
- 一張自增表中有三條數據,刪除了兩條數據之後重啓數據庫,再新增一條數據,此時這條數據的 ID 是幾?
- MySQL 中什麼情況會導致自增主鍵不能連續?
- InnoDB 中自增主鍵能不能被持久化?
- ...
MySQL索引模塊
- 什麼是索引?
- 索引分別有哪些優點和缺點?
- 以下 SQL 有什麼問題?該如何優化?
- 爲什麼 MySQL 官方建議使用自增主鍵作爲表的主鍵?
- 自增主鍵有哪些優缺點?
- 索引有幾種類型?分別如何創建?
- 主索引和唯一索引有什麼區別?
- 在 InnDB 中主鍵索引爲什麼比普通索引的查詢性能高?
- 什麼叫回表查詢?
- 如何查詢一張表的所有索引?
- MySQL 最多可以創建多少個索引列?
- 以下 like 查詢會使用索引的是哪一個選項?爲什麼?
- 如何讓 like %abc 走索引查詢?
- ...
MySQL事務模塊
- 事務是什麼?
- 事務有哪些特性?
- MySQL 中有幾種事務隔離級別?分別是什麼?
- 幻讀和不可重複讀的區別?
- 併發事務一般有哪些問題?
- 併發事務有什麼什麼問題?應該如何解決?
- 什麼是 MVCC?
- MVCC 是怎麼工作的?
- REPEATABLE READ(可重讀)隔離級別下 MVCC 如何工作?
- MySQL 事務實現原理是什麼?
- 如何設置 MySQL 的事務隔離級別?
- ...
MySQL日誌模塊
- 什麼是鎖?MySQL 中提供了幾類鎖?
- 什麼是死鎖?
- 常見的死鎖案例有哪些?
- 如何處理死鎖?
- 如何查看死鎖?
- 如何避免死鎖?
- InnoDB 默認是如何對待死鎖的?
- 如何開啓死鎖檢測?
- 什麼是全局鎖?它的應用場景有哪些?
- 什麼是共享鎖?
- 什麼是排它鎖?
- 使用全局鎖會導致什麼問題?
- 如何處理邏輯備份時,整個數據庫不能插入的情況?
- ...
MySQL日誌篇
MySQL性能優化模塊
- 什麼是慢查詢?
- 如何開啓慢查詢日誌?
- 如何定位慢查詢?
- MySQL 的優化手段都有哪些?
- MySQL 常見讀寫分離方案有哪些?
- 介紹一下 Sharding-JDBC 的功能和執行流程?
- ...
由於篇幅字數原因,以上的MySQL學習筆記和MySQL面試解析108題文檔已經整理成離線文檔了,有需要的朋友麻煩點擊直達免費獲取
MySQL學習筆記
MySQL面試解析108題文檔