黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 2020年Java數據庫筆試題大全

2020年Java數據庫筆試題大全

更新時間:2019-12-24 11:37:25 來源:動力節點 瀏覽3369次

Question 1:

  你目前接觸的mysql版本是什么?除了官方版本,還接觸過其他的mysql分支版本嘛?

  產生分支的原因

  許多開發人員認為有必要將其拆分成其他項目,并且每個分支項目都有自己的專長。該需求以及Oracle對核心產品增長緩慢的擔憂,導致出現了許多開發人員感興趣的子項目和分支

  三個流行MySQL分支:Drizzle、MariaDB和Percona Server(包括XtraDB引擎)

  MariaDB不僅是mysql的替代品,主要還是創新和提高mysql自有技術。

  新功能介紹

  multi-source replication 多源復制

  表的并行復制

  galera cluster集群

  spider水平分片

  tokuDB存儲引擎

  XtraDB是innodb存儲引擎的增強版,可用來更好地發揮最新的計算機硬件系統性能,還包含在高性能模式下的新特性。它可以向下兼容,因為它是在innodb基礎上構建,所以他有更多的指標和擴展功能。而且它在cpu多核的條件下,可以更好地使用內存,時數據庫性能提到更高!

  Drizzle與mysql的差別就比較大了,并且不能兼容,如果想運行此環境,就需要重寫一些代碼了!

  Question 2:

  mysql主要的存儲引擎myisam和innodb的不同之處?

  事務的支持不同(innodb支持事務,myisam不支持事務)

  鎖粒度(innodb行鎖應用,myisam表鎖)

  存儲空間(innodb既緩存索引文件又緩存數據文件,myisam只能緩存索引文件)

  存儲結構

  (myisam:數據文件的擴展名為.MYD myData ,索引文件的擴展名是.MYI myIndex)

  (innodb:所有的表都保存在同一個數據文件里面 即為.Ibd)

  5. 統計記錄行數

  (myisam:保存有表的總行數,select count(*) from table;會直接取出出該值)

  (innodb:沒有保存表的總行數,select count(*) from table;就會遍歷整個表,消耗相當大)

  Question 3:

  Innodb的體系結構簡單介紹一下?

  談及到innodb的體系結構,首先要考慮mysql的體系結構,分為兩部分mysql的server層和存儲引擎層

  先要跟面試官聊清楚mysql的整體方向,然后再去涉及innodb體系結構

  建議從三方面介紹innodb體系結構:內存----線程-----磁盤

  內存中包含insert_buffer,data_buffer,index_buffer,redo_log_buffer,double_write

  內存刷新到磁盤的機制,redo,臟頁,binlog的刷新條件

  各種線程的作用,master_thread,purge_thread,redo log thread,read thread,write thread,page cleaner thread

  磁盤中存放著數據文件,redo log,undo log,binlog

  Question 4:

  mysql有哪些索引類型:

  數據結構角度上可以分:B+tree索引,hash索引,fulltext索引(innodb,myisam都支持)

  存儲角度上可以分:聚集索引,非聚集索引

  邏輯角度上可以分:primary key,normal key,單列,復合,覆蓋索引

  Question 5:

  mysql binlog有幾種格式:

  1. statement

  優點:不需要記錄每一行的變化,減少了binlog日志量,節約了IO,提高性能

  缺點:當使用一些特殊函數的時候,或者跨庫操作的時候容易丟失數據

  注:在生產中不建議使用

  2. row

  優點:清晰記錄每行的數據信息,不會出現跨庫丟數據的情況

  缺點:內容當記錄到日志中的時候,都將以每行記錄的修改來記錄,但就會產生大量的binlog,對于網絡開銷也比較大

  注:生產中推薦使用

  3. mixed

  是mysql5.1的時候,一個過渡版本,DDL語句會記錄成statement,DML會記錄row。

  注:生產中不建議使用

2020年Java數據庫筆試題大全

  Qusetion 6:

  mysql主從復制的具體原理是什么?

  主服務器把數據更新記錄到二進制日志中,從服務器通過io thread向主庫發起binlog請求,主服務器通過IO dump thread把二進制日志傳遞給從庫,從庫通過io thread記錄到自己的中繼日志中。然后再通過sql thread應用中繼日志中sql的內容。

  Qusetion 7:

  數據庫中雙一是什么?

  sync_binlog=1

  innodb_flush_log_at_trx_commit=1

  innodb_flush_log_at_trx_commit和sync_binlog 兩個參數是控制MySQL 磁盤寫入策略以及數據安全性的關鍵參數

  innodb_flush_log_at_trx_commit設置為1,每次事務提交時MySQL都會把log buffer的數據寫入log file,并且刷到磁盤中去。

  sync_binlog =N (N>0) ,MySQL 在每寫 N次 二進制日志binary log時,會使用fdatasync()函數將它的寫二進制日志binary log同步到磁盤中去

  Qusetion 8:

  如何監控mysql replication復制延遲?

  可以通過第三方工具 業界中的瑞士×××percona-toolkit中的命令,pt-heartbeat進行主從延遲監控。

  傳統方法,通過比較主從服務器之間的position號的差異值。

  還可以通過查看seconds_behind_master估算一下主從延遲時間

  Qusetion 9:

  大表DDL語句,如何實施,才能把性能影響降到最低?

  可以通過傳統方法導入導出數據,新建一張與原表一樣的表結構,把需要執行的ddl語句在無數據的新表執行,然后把老表中的數據導入到新表中,把新表改成老表的名字

  通過第三方工具 業界中的瑞士×××percona-toolkit中的命令,pt-online-schema-change進行在線操作

  對于新版本的mysql(5.7)可以直接在線online ddl

  Qusetion 10:

  為什么要為innodb表設置自增列做主鍵?

  1.使用自增列做主鍵,寫入順序是自增的,和B+數葉子節點分裂順序一致

  2.表不指定自增列做主鍵,同時也沒有可以被選為主鍵的唯一索引,InnoDB就會選擇內置的rowid作為主鍵,寫入順序和rowid增長順序一致

  所以InnoDB表的數據寫入順序能和B+樹索引的葉子節點順序一致的話,這時候存取效率是最高

2020年Java數據庫筆試題大全

      以上就是動力節點Java培訓機構小編介紹的“2020年Java數據庫筆試題大全”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

相關推薦

最新最全java面試題及答案(初級到高級)

史上最全的中高級JAVA工程師面試題及答案匯總

Java高級開發工程師面試題

2019史上最全java面試題題庫大全800題

哪有資深java工程師面試題

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产精品久久久久999 | 天天干天天操天天做 | 色先锋资源网 | 亚洲68283精品人体 | 一级做性色a爱片久久片 | 特级淫片aaaaa片毛片 | 国产毛片毛片精品天天看 | 精品国产一区二区三区免费 | 免费无遮h在线网站大全 | 亚洲人欧洲日韩 | 2021国产成人午夜精品 | 2015在线看小明 | 亚洲视频在线观看 | 美女视频久久 | 成人激情小视频 | 狠狠做五月深爱婷婷天天综合 | 亚洲视频一 | 每日更新国产 | 亚洲综合久久综合激情久久 | 99久免费精品视频在线观看2 | 琪琪色在线视频 | 亚洲欧美国产另类 | 日韩国产欧美一区二区三区在线 | 香蕉视频国产精品人 | 91在线一区二区三区 | 欧美成人免费一级人片 | 可以免费观看一级毛片黄a 可以免费观看的一级毛片 可以免费观看的黄色网址 可以看的黄色网址 | 亚洲高清毛片 | 老司机日日摸夜夜摸精品影院 | 国产精品天干天干在线综合 | 在线观看亚洲一区 | 色免费在线观看 | 欧美一区二区三区视频在线观看 | 国产亚洲人成网站观看 | 男人的私人影院 | 亚洲欧美中文v日韩v在线 | 日韩第二页 | 久久午夜夜伦鲁鲁片不卡 | 9191精品国产费久久 | 国产玖玖 | 美女色黄|