bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

面試必備的10道MySQL題-創(chuàng)新互聯(lián)

MySQL 事務,是我們?nèi)ッ嬖囍懈呒夐_發(fā)經(jīng)常會被問到的問題,很多人雖然經(jīng)常使用 MySQL,SQL 語句也寫得很溜,但是面試的時候,被問到這些問題,總是不知從何說起。下面我們先來了解一下什么是 MySQL事務,再給大家分享10道面試必備的MySQL題。

創(chuàng)新互聯(lián)建站專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、平山網(wǎng)站定制設(shè)計、自適應品牌網(wǎng)站建設(shè)、H5場景定制商城網(wǎng)站制作、集團公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設(shè)計等建站業(yè)務,價格優(yōu)惠性價比高,為平山等各大城市提供網(wǎng)站開發(fā)制作服務。

MySQL事務是數(shù)據(jù)處理的最小操作單元,是一組不可在分割的操作集合,這個操作單元里的一系列操作要么都成功,要么都失敗。

1、MySQL主從復制的原理。
(1)、主庫必須開啟二進制日志
(2)、當有增刪改的語句時,會記錄到主庫的binlog中
(3)、主庫通過IO線程把binlog里面的內(nèi)容傳給從庫的relay binlog(中繼日志)(這是msyql復制是異步復制的原因)
(4)、從庫的sql線程負責讀取它的relay log里的信息并應用到數(shù)據(jù)庫中
2、Seconds_Behind_Master的原理。
表示sql線程和io線程之間的時間差
具體的計算:從庫服務器當前的時間戳與二進制日志中的事件的時間戳相對比得到的,所以只有在執(zhí)行事件時才能報告延遲。
不足:
一些錯誤(例如主備的max_allowed_packet不匹配,或者網(wǎng)絡不穩(wěn)定)可能中斷復制,由于主從復制是異步操作,Seconds_Behind_Master可能顯示為0
3、主從延遲的主要原因有哪些?
(1)、慢SQL語句過多
(2)、從庫的硬件比主庫差
(3)、同一個主庫下有過多的從庫
(4)、網(wǎng)絡延遲
(5)、表分區(qū)過多
(還有一些原因,歡迎補充)
4、MySQL常見存儲引擎及各自特點。
(1)、InnoDB
支持事務、行級鎖、支持外鍵約束,主要面向OLTP的應用,使用next-key locking 的策略來避免幻讀現(xiàn)象的產(chǎn)生.
(2)、MyISAM
不支持事務、表鎖設(shè)計、支持全文索引、讀寫互相阻塞、不支持外鍵約束;主要面向OLAP應用場景;緩存池只緩存索引文件,不緩存數(shù)據(jù)文件
(3)、Memory
將所有數(shù)據(jù)保存在RAM中,在需要快速查找引用和其他類似數(shù)據(jù)的環(huán)境下,可提供極快的訪問。如果數(shù)據(jù)庫重啟或者奔潰,數(shù)據(jù)都將丟失。
(4)、TokuDB
支持事務、高壓縮、告訴讀寫、基于稀疏樹索引設(shè)計;支持大多數(shù)在線修改索引、添加字段。
(5)、Inforbright/infinidb
列式存儲、高壓縮、單列查詢快
5、innodb_flush_log_at_trx_commit參數(shù)0、1和2分別代表什么?
innodb_flush_log_at_trx_commit參數(shù)可以控制將redo log buffer中的更新記錄寫入到日志文件以及日志文件刷新到磁盤的操作時機。
0
每秒一次觸發(fā)log buffer寫入log file中,并且log file刷新到磁盤。
(由于進程調(diào)度問題,不能保證每秒100%刷新;如果mysql進程崩潰,可能會丟失1s的事務;效率高,但最不安全)
1
每次事務提交觸發(fā)log buffer寫入log file中,并且log file刷新到磁盤。
2
每次事務提交,log buffer寫入log file中;每秒log file刷新到磁盤。
(如果操作系統(tǒng)崩潰或者停電,可能會丟失1s的事務)
6、Mysql中varchar和char的區(qū)別
CHAR列的長度固定為創(chuàng)建表時聲明的長度,范圍(0-255)
VARCHAR列的長度不固定,范圍(0-65535)
7、varchar(50)中的50代表的含義、int(20)中20的含義。
varchar(50)中的50代表最多能存放50個字符
int(20)中20的含義表示顯示寬度,跟著zerofill一起才有意義
8、MySQL binlog的幾種日志錄入格式的涵義、適用場景和在復制中的優(yōu)劣。
(1)、statement level模式
每一條會修改數(shù)據(jù)的sql都會記錄到master的binlog中,slave在復制時sql進程會解析成和原來master端執(zhí)行過的相同的sql再次執(zhí)行。
適用場景:對主從數(shù)據(jù)一致性要求不太高,并且很少用到函數(shù)、存儲過程、觸發(fā)器等場景
優(yōu)點:bin-log日志量少
缺點:部分新功能(函數(shù)、存儲過程、觸發(fā)器)同步會有障礙,比如now()
(2)、row level模式
日志中會記錄成每一行數(shù)據(jù)被修改的形式,然后再slave端再對相同的數(shù)據(jù)進行修改
適用場景:對主從數(shù)據(jù)一致性要求比較高的場景。
優(yōu)點:記錄的詳細
缺點:binlog日志量過大
(3)、mixed模式
MySQL默認采用statement格式進行二進制日志文件的記錄,但是在一些情況下會使用row格式,可能的情況有:
1)、表的存儲引擎為NDB,此時對表的DML操作都會以ROW格式記錄
2)、使用了UUID(),USER(),CURRENT_USER(),FOUND_ROWS(),ROW_count()等不確定函數(shù)時
3)、使用了insert delay語句
4)、使用了用戶定義函數(shù)(UDF)
5)、使用了臨時表
適用場景:對主從數(shù)據(jù)一致性要求不太高,可能會用到函數(shù)、存儲過程、觸發(fā)器等場景
優(yōu)缺點介于statement和row模式之間
9、重做日志和二進制日志的區(qū)別(至少三點)
(1)涉及存儲引擎不一樣:
binlog記錄的是所有存儲引擎的操作記錄
redo log只記錄innodb存儲引擎的日志
(2)記錄內(nèi)容不一樣:
binlog記錄的是關(guān)于一個事務的具體操作內(nèi)容。為邏輯日志
而redo log記錄的是每個頁更改的物理情況
(3)寫的時間不一樣:
binlog文件僅在事務提交前進行提交,即只寫磁盤一次
而在事務進行過程中,卻不斷有重做日志條目被寫入到重做日志文件中。
10、Explain執(zhí)行計劃中要關(guān)注哪些要素?
(1)、type:本次查詢表聯(lián)接類型,從這里可以看到本次查詢大概的效率
(2)、key:最終選擇的索引,如果沒有索引的話,本次查詢效率通常很差
(3)、key_len:本次查詢用于結(jié)果過濾的索引實際長度
(4)、rows:預計需要掃描的記錄數(shù),預計需要掃描的記錄數(shù)越小越好
(5)、extra:額外附加信息,主要確認是否出現(xiàn) Using filesort、Using temporary 類似情況

以上10道MySQL面試題,只是眾多MySQL面試題中的部分,個人認為是比較典型的,出現(xiàn)頻率也比較高的試題,希望對你們有幫助!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

新聞標題:面試必備的10道MySQL題-創(chuàng)新互聯(lián)
鏈接URL:http://vcdvsql.cn/article28/ccsjcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版標簽優(yōu)化面包屑導航外貿(mào)建站動態(tài)網(wǎng)站商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名