MySQL常見面試

事務

什麼是事務
  • 邏輯上的一組操作,要麼執行,要麼不執行
事務的特徵
  • ACID,原子性、一致性、隔離性、持久性
  • 原子性:最小執行單位,不允許分割
  • 一致性:執行前後,數據保持一致
  • 隔離性:併發訪問時,多個事務之間應該隔離
  • 造成對數據庫的影響是持久的
併發事務帶來的問題
  • 髒讀、幻讀、不可重複讀、更新丟失
  • 髒讀:事務讀取未被提交的數據
  • 幻讀:事務讀取時發現多了或少了數據,發生在另一個事務對錶進行insert或者update
  • 不可重複讀:事務A讀取了數據,事務B修改了該數據,事務A不能讀取同一數據
  • 更新丟失:數據庫僅保存最後一個事務修改的數據
事務隔離級別
  • 讀未提交、讀已提交、可重複讀、可串行化
\ 髒讀 不可重複讀 幻讀
讀未提交
讀已提交
可重複讀
可串行化

數據庫引擎

MyISAM與InnoDB的區別
  • 前者不支持事務和行級鎖,只支持表級鎖;後者支持事務、行級鎖、表級鎖
  • 前者崩潰後無法安全恢復後者可以安全恢復
  • 前者不支持外鍵,後者支持
  • 前者葉節點存放的是數據地址,後者葉節點存放的是數據內容,可以是整行數據,也可以是主鍵
  • 前者支持非聚集索引,後者支持聚集索引

索引

什麼是索引
  • 一種數據結構,能夠幫助我們快速檢索數據庫中的數據
索引的類型
  • 普通索引、唯一索引、主鍵索引、全文索引、多列索引
Hash索引與B+索引的區別
  • Hash索引不支持範圍查詢、順序查詢,而B+樹支持
  • 在衝突不大的情況下,Hash索引的檢索效率高於B+樹
  • Mysql中InnoDB引擎默認使用B+樹
MySQL面試知識點

區分操作

Delete、truncate、drop
  • Delete刪除數據,不釋放空間、不刪除表結構
  • Truncate刪除數據、釋放空間、不刪除表結構
  • Drop刪除數據、釋放空間、刪除表結構

Java常見面試題

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