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

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) 2020年Java數(shù)據(jù)庫(kù)筆試題大全

2020年Java數(shù)據(jù)庫(kù)筆試題大全

更新時(shí)間:2019-12-24 11:37:25 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3366次

Question 1:

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

  產(chǎn)生分支的原因

  許多開發(fā)人員認(rèn)為有必要將其拆分成其他項(xiàng)目,并且每個(gè)分支項(xiàng)目都有自己的專長(zhǎng)。該需求以及Oracle對(duì)核心產(chǎn)品增長(zhǎng)緩慢的擔(dān)憂,導(dǎo)致出現(xiàn)了許多開發(fā)人員感興趣的子項(xiàng)目和分支

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

  MariaDB不僅是mysql的替代品,主要還是創(chuàng)新和提高mysql自有技術(shù)。

  新功能介紹

  multi-source replication 多源復(fù)制

  表的并行復(fù)制

  galera cluster集群

  spider水平分片

  tokuDB存儲(chǔ)引擎

  XtraDB是innodb存儲(chǔ)引擎的增強(qiáng)版,可用來(lái)更好地發(fā)揮最新的計(jì)算機(jī)硬件系統(tǒng)性能,還包含在高性能模式下的新特性。它可以向下兼容,因?yàn)樗窃趇nnodb基礎(chǔ)上構(gòu)建,所以他有更多的指標(biāo)和擴(kuò)展功能。而且它在cpu多核的條件下,可以更好地使用內(nèi)存,時(shí)數(shù)據(jù)庫(kù)性能提到更高!

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

  Question 2:

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

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

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

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

  存儲(chǔ)結(jié)構(gòu)

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

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

  5. 統(tǒng)計(jì)記錄行數(shù)

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

  (innodb:沒有保存表的總行數(shù),select count(*) from table;就會(huì)遍歷整個(gè)表,消耗相當(dāng)大)

  Question 3:

  Innodb的體系結(jié)構(gòu)簡(jiǎn)單介紹一下?

  談及到innodb的體系結(jié)構(gòu),首先要考慮mysql的體系結(jié)構(gòu),分為兩部分mysql的server層和存儲(chǔ)引擎層

  先要跟面試官聊清楚mysql的整體方向,然后再去涉及innodb體系結(jié)構(gòu)

  建議從三方面介紹innodb體系結(jié)構(gòu):內(nèi)存----線程-----磁盤

  內(nèi)存中包含insert_buffer,data_buffer,index_buffer,redo_log_buffer,double_write

  內(nèi)存刷新到磁盤的機(jī)制,redo,臟頁(yè),binlog的刷新條件

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

  磁盤中存放著數(shù)據(jù)文件,redo log,undo log,binlog

  Question 4:

  mysql有哪些索引類型:

  數(shù)據(jù)結(jié)構(gòu)角度上可以分:B+tree索引,hash索引,fulltext索引(innodb,myisam都支持)

  存儲(chǔ)角度上可以分:聚集索引,非聚集索引

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

  Question 5:

  mysql binlog有幾種格式:

  1. statement

  優(yōu)點(diǎn):不需要記錄每一行的變化,減少了binlog日志量,節(jié)約了IO,提高性能

  缺點(diǎn):當(dāng)使用一些特殊函數(shù)的時(shí)候,或者跨庫(kù)操作的時(shí)候容易丟失數(shù)據(jù)

  注:在生產(chǎn)中不建議使用

  2. row

  優(yōu)點(diǎn):清晰記錄每行的數(shù)據(jù)信息,不會(huì)出現(xiàn)跨庫(kù)丟數(shù)據(jù)的情況

  缺點(diǎn):內(nèi)容當(dāng)記錄到日志中的時(shí)候,都將以每行記錄的修改來(lái)記錄,但就會(huì)產(chǎn)生大量的binlog,對(duì)于網(wǎng)絡(luò)開銷也比較大

  注:生產(chǎn)中推薦使用

  3. mixed

  是mysql5.1的時(shí)候,一個(gè)過(guò)渡版本,DDL語(yǔ)句會(huì)記錄成statement,DML會(huì)記錄row。

  注:生產(chǎn)中不建議使用

2020年Java數(shù)據(jù)庫(kù)筆試題大全

  Qusetion 6:

  mysql主從復(fù)制的具體原理是什么?

  主服務(wù)器把數(shù)據(jù)更新記錄到二進(jìn)制日志中,從服務(wù)器通過(guò)io thread向主庫(kù)發(fā)起binlog請(qǐng)求,主服務(wù)器通過(guò)IO dump thread把二進(jìn)制日志傳遞給從庫(kù),從庫(kù)通過(guò)io thread記錄到自己的中繼日志中。然后再通過(guò)sql thread應(yīng)用中繼日志中sql的內(nèi)容。

  Qusetion 7:

  數(shù)據(jù)庫(kù)中雙一是什么?

  sync_binlog=1

  innodb_flush_log_at_trx_commit=1

  innodb_flush_log_at_trx_commit和sync_binlog 兩個(gè)參數(shù)是控制MySQL 磁盤寫入策略以及數(shù)據(jù)安全性的關(guān)鍵參數(shù)

  innodb_flush_log_at_trx_commit設(shè)置為1,每次事務(wù)提交時(shí)MySQL都會(huì)把log buffer的數(shù)據(jù)寫入log file,并且刷到磁盤中去。

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

  Qusetion 8:

  如何監(jiān)控mysql replication復(fù)制延遲?

  可以通過(guò)第三方工具 業(yè)界中的瑞士×××percona-toolkit中的命令,pt-heartbeat進(jìn)行主從延遲監(jiān)控。

  傳統(tǒng)方法,通過(guò)比較主從服務(wù)器之間的position號(hào)的差異值。

  還可以通過(guò)查看seconds_behind_master估算一下主從延遲時(shí)間

  Qusetion 9:

  大表DDL語(yǔ)句,如何實(shí)施,才能把性能影響降到最低?

  可以通過(guò)傳統(tǒng)方法導(dǎo)入導(dǎo)出數(shù)據(jù),新建一張與原表一樣的表結(jié)構(gòu),把需要執(zhí)行的ddl語(yǔ)句在無(wú)數(shù)據(jù)的新表執(zhí)行,然后把老表中的數(shù)據(jù)導(dǎo)入到新表中,把新表改成老表的名字

  通過(guò)第三方工具 業(yè)界中的瑞士×××percona-toolkit中的命令,pt-online-schema-change進(jìn)行在線操作

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

  Qusetion 10:

  為什么要為innodb表設(shè)置自增列做主鍵?

  1.使用自增列做主鍵,寫入順序是自增的,和B+數(shù)葉子節(jié)點(diǎn)分裂順序一致

  2.表不指定自增列做主鍵,同時(shí)也沒有可以被選為主鍵的唯一索引,InnoDB就會(huì)選擇內(nèi)置的rowid作為主鍵,寫入順序和rowid增長(zhǎng)順序一致

  所以InnoDB表的數(shù)據(jù)寫入順序能和B+樹索引的葉子節(jié)點(diǎn)順序一致的話,這時(shí)候存取效率是最高

2020年Java數(shù)據(jù)庫(kù)筆試題大全

      以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“2020年Java數(shù)據(jù)庫(kù)筆試題大全”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

相關(guān)推薦

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

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

Java高級(jí)開發(fā)工程師面試題

2019史上最全java面試題題庫(kù)大全800題

哪有資深java工程師面試題

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 国产一区成人 | 高清色视频 | 嫩草在线视频www免费观看 | 日本一区二区三区中文字幕视频 | 最近免费中文字幕视频高清在线看 | 热99re久久免费视精品频软件 | 成人性动漫高清免费观看网址 | 亚洲一级毛片在线播放 | 黄网站免费看 | 在线色网| 国产三级精品三级在专区 | 亚洲激情视频图片 | 日韩一道本 | 久久成年视频 | 日韩亚洲人成在线综合日本 | 成人午夜在线 | 久久久久夜夜夜精品国产 | 国产精品免费大片 | 欧美有码在线观看 | 新久草| 国产免费色视频 | 一个人看的www免费观看 | 在线观看男女爱视频网站 | 欧美日本成人 | 久久综合狠狠综合久久97色 | 岛国毛片在线 | 高清日韩 | 国产精品嫩草影院88v | 日本午夜免费福利视频 | 日韩淫| 中文在线 | 中文 | 国产毛片a级 | 成年人免费小视频 | 最新黄色网址在线观看 | 欧美性free极品另类 | 人人澡人人草 | 欧美日本一区 | 国卡一卡二卡三免费网站 | 网站午夜| 香蕉视频在线观 | 天天舔天天操天天干 |