- 論壇徽章:
- 0
|
本帖最后由 mfkqwyc86 于 2019-01-04 12:20 編輯
【面試必過(guò)】MySQL數(shù)據(jù)庫(kù)高級(jí)工程師-面試題-MySQL DBA面試題(共3套) |
1.1 1、MySQL 的復(fù)制原理以及流程
(1)、復(fù)制基本原理流程
1. 主:binlog 線程——記錄下所有改變了數(shù)據(jù)庫(kù)數(shù)據(jù)的語(yǔ)句,放進(jìn)master 上的binlog 中;
2. 從:io 線程——在使用start slave 之后,負(fù)責(zé)從master 上拉取binlog 內(nèi)容,放進(jìn)自己的relay log
中;3. 從:sql 執(zhí)行線程——執(zhí)行relay log 中的語(yǔ)句;
(2)、MySQL 復(fù)制的線程有幾個(gè)及之間的關(guān)聯(lián)
MySQL 的復(fù)制是基于如下3 個(gè)線程的交互( 多線程復(fù)制里面應(yīng)該是4 類線程):
1. Master 上面的binlog dump 線程,該線程負(fù)責(zé)將master 的binlog event 傳到slave;
2. Slave 上面的IO 線程,該線程負(fù)責(zé)接收Master 傳過(guò)來(lái)的binlog,并寫入relay log;
3. Slave 上面的SQL 線程,該線程負(fù)責(zé)讀取relay log 并執(zhí)行;
4. 如果是多線程復(fù)制,無(wú)論是5.6 庫(kù)級(jí)別的假多線程還是MariaDB 或者5.7 的真正的多線程復(fù)制, SQL 線
程只做coordinator,只負(fù)責(zé)把relay log 中的binlog 讀出來(lái)然后交給worker 線程, woker 線程負(fù)
責(zé)具體binlog event 的執(zhí)行
更多面試題,請(qǐng)下載附件......
mysql-dba3.png (60.65 KB, 下載次數(shù): 140)
下載附件
2019-01-04 12:19 上傳
mysql-dba2.png (60.11 KB, 下載次數(shù): 142)
下載附件
2019-01-04 12:19 上傳
mysql-dba1.png (61.02 KB, 下載次數(shù): 136)
下載附件
2019-01-04 12:19 上傳
|
|