Mysql面試可能會問到的基礎知識

2021-09-29 02:56:25 字數 2097 閱讀 9301

mysql如何保證和監控主從資料一致性的

5.6 gtid複製,

5.7 無損半同步複製(rpl_semi_sync_master_wait_point:after_sync)

pt-table-checksum監控主從資料一致性

mysql如何監控和減少主從延遲的

5.5的單執行緒複製--->5.6的多庫複製--->5.7的多執行緒複製    

pt-heartbeat 監控mysql主從同步延遲

myisam和innodb的區別:

1.事務性

2.innodb鎖粒度更細,myisam表級鎖,innodb行級鎖,併發性更高

3.innodb支援mvcc(多版本併發控制)

4.innodb支援外來鍵(但是不建議用)

5.表型別 innodb是iot,myisam是堆表

6.myisam會使用乙個變數儲存表的行數

7.innodb必須有主鍵(沒有的話innodb也會自動建立乙個自增列作為主鍵)

innodb四大特性:

1.change buffer

---記錄不在記憶體中的二級索引頁的修改,頁面讀取到記憶體後再merge

2.double write

----用來解決頁斷裂的問題,記憶體中有double write buffer,系統表空間裡對應的有連續的128個頁(2個extend,2m),其中120個用於批量刷髒,8個用於single page flush

----將隨機寫變成了順序寫

----記憶體中髒頁--->double write buffer--->系統表空間--->磁碟

----redo log的最小寫入單位是512位元組=磁碟io最小單位,所以不會有頁斷裂問題 

3.read ahead

----兩種預讀演算法:

linear read-ahead:如果innodb順序讀取了乙個extent的n頁,那麼innodb會發起乙個非同步讀去讀取the entire following extent。由引數innodb_read_ahead_threshold控制頁閾值    

random read-ahead:如果乙個extent中有13個連續不斷的頁被載入到buffer pool中,innodb會非同步發起乙個請求去讀取該extent的剩下所有頁。由引數innodb_random_read_ahead控制頁閾值

4.adaptive hash index

----作用是提高檢索效率

mysql5.6 新增特性:

online ddl、gtid複製、schema級別的多執行緒複製、memcached nosql api、統計資訊持久化、buffer pool預熱

innodb日誌

redo ---redo log buffer --->ib_logfile

undo ---undo log buffer --->ib_data* 也可以單獨指定innodb_undo_directory、innodb_undo_tablespaces

mysql刷日誌規則:

1.innodb_flush_log_at_trx_commit

2.innodb_flush_log_at_timeout控制

3.checkpoint觸發

4.log buffer使用記憶體超過一般

mysql刷資料頁規則:

1.checkpoint觸發

innodb_flush_log_at_trx_commit和sync_binlog:

innodb_flush_log_at_trx_commit:log buffer--->os buffer---->ib_logfile

0--->每次提交寫log buffer  每秒寫入os buffer並呼叫fsync()落盤

1--->每次提交都落盤

2--->每次提交寫到os buffer 每秒呼叫fsync()落盤

sync_binlog:binlog_cache--->binlog

0--->mysql不控制binlog的重新整理

n--->每n次事務重新整理一次

mysql binlog的格式:

statement、mixed、row

innodb的事務隔離級別:

讀未提交、讀已提交、可重複讀、序列

Vue介紹(面試可能會問到)。

什麼是mvvm m model資料層 v viewdom層 vm view model處理資料介面的中間層,指vue vue是什麼?vue是js的mvvm庫,只關注檢視層,以資料為驅動,vue將自身和dom進行繫結,dom與資料同步變化。它有什麼特點 1 簡潔 html json資料 vue例項組成...

CSS面試可能會問到的問題

更多flex布局參考 更多的相容參考鏈結 當乙個元素的visibility屬性被設定成collapse值後,對於一般的元素,它的表現跟hidden是一樣的。自動變成display block,因此,可以直接設定浮動元素的寬高 通過 查詢可以為不同大小和尺寸的 定義不同的css,適應相應的裝置的顯示。...

jsp中的盲區 面試可能會問到的東西

1 今天看到乙個有趣的jsp題目。this is my jsp page.int a 10 out.print a a int a 100 out.print a 輸出結果 10 11 11 有人可能會問最後乙個輸出為什麼不是100 個人解釋 int a 100 內的 相當於全域性變數。而 out....