Hi你們好,我是來自博客園的賜我白日夢!mysql
爲你們帶來MySQL面試專題!全文110篇!以問答的方式,由淺入深的幫你應對各種MySQL面試題的狂轟濫炸!固然也不乏會分享一些高階讀寫分離數據庫中間件原理及落地的技術實現,爲你揭開數據庫中間件神祕的面紗!面試
面試官都關注了!你還在猶豫什麼呢? sql
簡述一下數據庫的三大範式吧!框架
一條insert語句的undolog長啥樣?
談談undo log鏈條吧
談談你對redo-log的扮演的角色,有啥用?
談談log block、buffer、以及落盤機制
談談bin-log有啥用?在哪裏?長啥樣?
瞭解bin-log的寫入機制嗎?
binlog有哪些格式?有啥區別?優缺點?線上用那種格式?
如何將DB中的數據恢復到指定日期的指定時刻?
使用過mysqldump嗎?
瞭解兩階段提交嗎?
兩階段提交和分佈式事務
爲何說binlog沒有數據恢復的能力?
MySQL運行的過程當中大批量的寫undo、redo,不影響性能嗎?
能簡述一下一條Update SQL的執行流程是什麼嗎?
串講MySQL各類Crash如何保證數據安全
char類型,究竟是定長仍是不定長呢?
說說MySQL是如何存儲varchar類型的吧!
說說MySQL有幾種聯表查詢?分別是什麼?
join查詢,選大表當驅動表仍是選小表?
說說這條SQL的查詢結果是什麼吧!
談談 checkpoint技術!
什麼是MySQL-InsertBuffer
什麼是MySQL-changebuffer
瞭解double write嗎?
MySQL如何解決的寫失效問題?
MySQL5.7使用的InnoDB引擎版本是多少?
MySQL啓動失敗了,怎麼排錯?
從哪裏看MySQL曾經執行過的SQL?
談談MySQL提供了哪些登錄方式吧!
說說平衡二叉樹、二叉搜索樹的特性吧!
內心有點B樹嗎?
內心有點B+樹嗎?
別慫,談談紅黑樹!
爲何MySQL的索引組織形式選擇了B+樹?
講一下什麼是聚簇索引、B+Tree是怎麼長高的!
能談談二級索引嗎?
說說什麼是覆蓋索引吧!
談談你對聯合索引的理解!
看過SQL執行計劃嗎?說說看!
使用過mysqldump嗎?說說看!
什麼是有損DDL?什麼是無損DDL?
如何無損給線上的table添加一列?
說說什麼是倒排索引?
InnoDB支持全文檢索嗎?
爲啥大家的全文檢索系統選ES而不用MySQL實現呢?
談談什麼是MySQL的意向鎖吧!
談談MySQL的ReadView機制!
談談MVCC是怎麼實現的吧!
在RR隔離界別下,select * from table;會加鎖嗎?
如何給select 語句加鎖?
什麼是Record Lock?
說說四大隔離級別吧!
舉例說說什麼是髒讀、髒寫、幻讀、不可重複讀
InnoDB是如何解決幻讀的(Gap Lock)?
什麼是Next-Key Lock?
來看看這條SQL加了什麼鎖?鎖的範圍是什麼?
瞭解MySQL的兩階段鎖協議嗎?
瞭解表鎖嗎?談談看!
談談MySQL的死鎖、死鎖檢測吧!
說說長事物可能帶來哪些風險吧!
MySQL存在丟失更新問題嗎?
重作表,表中數據刪除後爲啥表大小不變?
直接刪除一個線上的大表會有什麼影響?
瞭解如何作線上大表限速刪除嗎?
能結合ORM框架聊聊MySQL的事務嗎?
大家的業務有作分表嗎?如何分表分的?
談談MySQL分庫吧!
瞭解MySQL的分區表嗎?說說看!
分區能加快查詢的性能嗎?
能對比一下MySQL的分區表和分庫分表兩種玩法嗎?
瞭解XA事物嗎?
什麼是分佈式事務?爲何會有分佈式事務?
瞭解MySQL數據庫的分佈式事務嗎?
談談MySQL的用戶、及權限吧!
知道什麼是GTID嗎?
如何經過filename + position搭建一套MySQL集羣?
如何經過GTID搭建一套MySQL的集羣?
如何基於Docker搭建一套MySQL集羣?
能 串講主從MySQL集羣的寫各類日誌、崩潰恢復、兩階段提交嗎?
假設主庫跪了,你是如何作主從切換的?
你有哪些方法判斷主從MySQL的數據同步是否中斷了?
說說主從複製究竟是怎麼玩的!
瞭解主從複製的冪等機制嗎?
如何往現有的集羣中添加一個新的節點進去?
談談你瞭解的MySQL主從複製的模式有哪些以及各自的優缺點!
剖析數據庫中間件究竟是怎麼的存在!
剖析數據庫中間件的登錄、鑑權是如何實現的!
剖析數據庫中間件的權限管理是如何實現的!
深度剖析數據庫中間件的鏈接池管理!
深度剖析數據庫中間件的是如何實現事物管理的!
深度剖析數據庫中間件的是如何實現讀寫分離的!