1、MySQL的復制原理以及流程
基本原理流程,3個線程以及之間的關聯
2、MySQL中myisam與innodb的區別,至少5點
(1)、問5點不同;
(2)、innodb引擎的4大特性
(3)、2者selectcount(*)哪個更快,為什么
3、MySQL中varchar與char的區別以及varchar(50)中的50代表的涵義
(1)、varchar與char的區別
(2)、varchar(50)中50的涵義
(3)、int(20)中20的涵義
(4)、mysql為什么這么設計
4、問了innodb的事務與日志的實現方式
(1)、有多少種日志;
(2)、事物的4種隔離級別
(3)、事務是如何通過日志來實現的,說得越深入越好。
5、問了MySQL binlog的幾種日志錄入格式以及區別
(1)、binlog的日志格式的種類和分別
(2)、適用場景;
(3)、結合第一個問題,每一種日志格式在復制中的優劣。
6、問了下MySQL數據庫cpu飆升到500%的話他怎么處理?
處理思路
7、sql優化
(1)、explain出來的各種item的意義;
(2)、profile的意義以及使用場景;
8、備份計劃,mysqldump以及xtranbackup的實現原理
(1)、備份計劃;
(2)、備份恢復時間;
(3)、xtrabackup實現原理
9、mysqldump中備份出來的sql,如果我想sql文件中,一行只有一個insert....value()的話,怎么辦?如果備份需要帶上master的復制點信息怎么辦?
10、500臺db,在最快時間之內重啟
11、innodb的讀寫參數優化
(1)、讀取參數
(2)、寫入參數;
(3)、與IO相關的參數;
(4)、緩存參數以及緩存的適用場景。
12、你是如何監控你們的數據庫的?你們的慢日志都是怎么查詢的?
13、你是否做過主從一致性校驗,如果有,怎么做的,如果沒有,你打算怎么做?
14、你們數據庫是否支持emoji表情,如果不支持,如何操作?
15、你是如何維護數據庫的數據字典的?
16、你們是否有開發規范,如果有,如何執行的
17、表中有大字段X(例如:text類型),且字段X不會經常更新,以讀為為主,請問
(1)、您是選擇拆成子表,還是繼續放一起;
(2)、寫出您這樣選擇的理由。
18、MySQL中InnoDB引擎的行鎖是通過加在什么上完成(或稱實現)的?為什么是這樣子的?
19、如何從mysqldump產生的全庫備份中只恢復某一個庫、某一張表?
20、開放性問題:據說是騰訊的
一個6億的表a,一個3億的表b,通過外間tid關聯,你如何最快的查詢出滿足條件的第50000到第50200中的這200條數據記錄。