最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Linux運(yùn)維工程師面試題(5)

2023-03-26 18:55 作者:阿賢在b站  | 我要投稿

Linux運(yùn)維工程師面試題(5)
1 SELECT 語(yǔ)句處理的順序
2 MySQL 高可用方案有哪些
3 mysql 主從復(fù)制原理
4 mycat 讀寫(xiě)分離原理
5 MHA 高可用原理
6 mysqldump 備份的原理
7 drop, delete 與 truncate 的區(qū)別,哪個(gè)最快
8 判斷主從延遲的方法
9 MySQL 主要的索引類型
10 MySQL 中 myisam 與 innodb 的區(qū)別

祝各位小伙伴們?cè)缛照业阶约盒膬x的工作。
持續(xù)學(xué)習(xí)才不會(huì)被淘汰。
地球不爆炸,我們不放假。
機(jī)會(huì)總是留給有有準(zhǔn)備的人的。
加油,打工人!

1 SELECT 語(yǔ)句處理的順序

查詢執(zhí)行路徑中的組件:查詢緩存、解析器、預(yù)處理器、優(yōu)化器、查詢執(zhí)行引擎、存儲(chǔ)引擎

SELECT語(yǔ)句的執(zhí)行流程:

2 MySQL 高可用方案有哪些

  • 主從復(fù)制+mycat 讀寫(xiě)分離

  • MHA(Master High Availability)

  • Galera Cluster

3 mysql 主從復(fù)制原理

用戶提交數(shù)據(jù)更新到主庫(kù),主庫(kù)會(huì)生成二進(jìn)制日志,寫(xiě)入到 bin log 中;主庫(kù)開(kāi)啟 dump 線程,用來(lái)給從庫(kù)的 io 線程傳送 bin log;從庫(kù)的 io 線程去請(qǐng)求主庫(kù)的 bin log,并將得到的 bin log 寫(xiě)入到中繼日志(relay log)中,sql 線程會(huì)讀取 relay log 文件中的日志,并解析成具體的操作,來(lái)執(zhí)行數(shù)據(jù)庫(kù)更新,保證主庫(kù)和從庫(kù)數(shù)據(jù)一致,完成主從復(fù)制。

4 mycat 讀寫(xiě)分離原理

Mycat 的原理中最重要的一個(gè)動(dòng)詞是"攔截",它攔截了用戶發(fā)送過(guò)來(lái)的 SQL 語(yǔ)句,首先對(duì) SQL 語(yǔ)句做了—些特定的分析:如分片分析、路由分析、讀寫(xiě)分離分析、緩存分析等,然后將此 SQL 發(fā)往后端的真實(shí)數(shù)據(jù)庫(kù),并將返回的結(jié)果做適當(dāng)?shù)奶幚?,最終再返回給用戶。

5 MHA 高可用原理

  1. 從宕機(jī)崩潰的 master 保存二進(jìn)制日志事件(bin log events);

  2. 識(shí)別含有最新更新的 slave;

  3. 應(yīng)用差異的中繼日志(relay log)到其他的 slave;

  4. 應(yīng)用從 master 保存的二進(jìn)制日志事件(bin log events);

  5. 提升—個(gè) slave 為新的 master;

  6. 使其他的 slave 連接新的 master 進(jìn)行復(fù)制。

6 mysqldump 備份的原理

是一個(gè) mysql 的客戶端命令,通過(guò) mysql 協(xié)議連接至 mysql 服務(wù)器進(jìn)行備份。mysqldump 命令將數(shù)據(jù)庫(kù)中的數(shù)據(jù)備份成一個(gè)文本文件。表的結(jié)構(gòu)和表中的數(shù)據(jù)將存儲(chǔ)在生成的文本文件中。它先使用 select 查出需要備份表的數(shù)據(jù)和需要備份的表的結(jié)構(gòu),再在文本文件中生成一個(gè) CREATE 語(yǔ)句。然后將表中的所有記錄轉(zhuǎn)換成一條 INSERT 語(yǔ)句。然后通過(guò)這些語(yǔ)句,就能夠創(chuàng)建表并插入數(shù)據(jù)。其實(shí)就是相當(dāng)于模擬mysql客戶端去連接數(shù)據(jù)庫(kù),將mysql中的數(shù)據(jù)生成一個(gè)標(biāo)準(zhǔn)輸出,在屏幕打印,一般配合標(biāo)準(zhǔn)輸出重定向,導(dǎo)入到一個(gè)文件中。mysqldump 整體備份的基本流程如下:

  1. 調(diào)用 FTWRL(flush tables with read lock),全局禁止寫(xiě)。

  2. 開(kāi)啟快照讀,獲取此時(shí)的快照(僅對(duì) innodb 表起作用)。

  3. 備份非 innodb 表數(shù)據(jù)( .frm、.myi、.myd 等)。

  4. 非 innodb 表備份完畢后,釋放 FTWRL 鎖。

  5. 逐一備份 innodb 表數(shù)據(jù)。

  6. 備份完成。

7 drop, delete 與 truncate 的區(qū)別,哪個(gè)最快

drop 直接刪掉表;truncate 刪除表中數(shù)據(jù),再插?時(shí)自增長(zhǎng)id又從1開(kāi)始;delete 刪除表中數(shù)據(jù),可以加 where 子句。想要?jiǎng)h除部分?jǐn)?shù)據(jù)用 delete;想要?jiǎng)h除表用 drop; 想保留表但是把數(shù)據(jù)刪除,如果和事務(wù)無(wú)關(guān)用 truncate。

  1. delete 語(yǔ)句執(zhí)?刪除的過(guò)程是每次從表中刪除??,并且同時(shí)將該?的刪除操作作為事務(wù)記錄在?志中保存以便進(jìn)?回滾操作。truncate table則?次性地從表中刪除所有的數(shù)據(jù)并不把單獨(dú)的刪除操作記錄記??志保存,刪除?是不能恢復(fù)的。并且在刪除的過(guò)程中不會(huì)激活與表有關(guān)的刪除觸發(fā)器,執(zhí)?速度快。

  2. 表和索引所占空間。當(dāng)表被 truncate 后,這個(gè)表和索引所占?的空間會(huì)恢復(fù)到初始??,? delete 操作不會(huì)減少表或索引所占?的空間。drop 語(yǔ)句將表所占?的空間全釋放掉。

  3. ?般??,在刪除速度上,drop > truncate > delete。

  4. 應(yīng)?范圍:truncate 只能對(duì) table,delete 可以是 table 和 view。

  5. truncate 和 delete 只刪除數(shù)據(jù),? drop 則刪除整個(gè)表(結(jié)構(gòu)和數(shù)據(jù))。

  6. truncate 與不帶 where 的 delete:只刪除數(shù)據(jù),?不刪除表的結(jié)構(gòu)(定義);drop 語(yǔ)句將刪除表的結(jié)構(gòu)被依賴的約束(constrain),觸發(fā)器(trigger),索引(index);依賴于該表的存儲(chǔ)過(guò)程/函數(shù)將被保留,但其狀態(tài)會(huì)變?yōu)椋篿nvalid。

8 判斷主從延遲的方法

通過(guò)命令 show slave status 查看 seconds_behind_master 的值來(lái)判斷

NULL - 表示 io_thread 或是 sql_thread 有任何一個(gè)發(fā)生故障,也就是該線程的 Running 狀態(tài)是 No,而非Yes。

0 - 該值為零,是我們極為渴望看到的情況,表示主從復(fù)制狀態(tài)正常。

9 MySQL 主要的索引類型

  • 普通索引:是最基本的索引,它沒(méi)有任何限制;

  • 唯一索引:索引列的值必須唯一,但允許有空值。如果是組合索引,則列值的組合必須唯一;

  • 主鍵索引:是一種特殊的唯一索引,一個(gè)表只能有一個(gè)主鍵,不允許有空值;

  • 組合索引:指多個(gè)字段上創(chuàng)建的索引,只有在查詢條件中使用了創(chuàng)建索引時(shí)的第一個(gè)字段,索引才會(huì)被使用。使用組合索引時(shí)遵循最左前綴集合;

  • 全文索引:主要用來(lái)查找文本中的關(guān)鍵字,而不是直接與索引中的值相比較,mysql 中 MyISAM 支持全文索引而 InnoDB 不支持;

10 MySQL 中 myisam 與 innodb 的區(qū)別

  1. innodb?持事物, myisam不?持事物

  2. innodb?持?級(jí)鎖, myisam?持表級(jí)鎖

  3. innodb?持MVC, myisam不?持

  4. innodb?持外鍵, myisam不?持

  5. innodb不?持全?索引,myisam?持

以上面試題僅僅個(gè)人總結(jié),想到什么就寫(xiě)什么,沒(méi)有任何順序,寫(xiě)的有什么不對(duì)的地方請(qǐng)各位大佬評(píng)論、留言,我會(huì)及時(shí)更正。

原文鏈接: [Linux運(yùn)維工程師面試題(5)](https://blog.waluna.top/2023/03/05/1355/).

Linux運(yùn)維工程師面試題(5)的評(píng)論 (共 條)

使用qq登录你需要登录后才可以评论。
盱眙县| 桂林市| 潍坊市| 巴林左旗| 安陆市| 梁山县| 当雄县| 聂拉木县| 千阳县| 留坝县| 宁南县| 陇南市| 手机| 农安县| 吉隆县| 得荣县| 庆阳市| 墨玉县| 松江区| 贞丰县| 休宁县| 高台县| 睢宁县| 新巴尔虎右旗| 康马县| 七台河市| 鄱阳县| 文化| 奉化市| 白沙| 德惠市| 沐川县| 广水市| 宣恩县| 聂拉木县| 保德县| 方正县| 武城县| 友谊县| 陵水| 视频|