更新時間:2022-12-21 15:55:19 來源:動力節(jié)點 瀏覽1585次
隨著用戶的不斷增加,Mysql索引就顯得格外的重要,對于后端的程序員,肯定是需要了解索引以及優(yōu)化的規(guī)則,并且能夠在實際應(yīng)用中運行。針對 Mysql面試中常見的知識點,小編例舉出了以下內(nèi)容,希望可以幫助到大家:
1、MySQL 中有哪幾種鎖?
1、表級鎖: 開銷小, 加鎖快; 不會出現(xiàn)死鎖; 鎖定粒度大, 發(fā)生鎖沖突的概率最高, 并發(fā)度最低。
2、行級鎖: 開銷大, 加鎖慢; 會出現(xiàn)死鎖; 鎖定粒度最小, 發(fā)生鎖沖突的概率最低, 并發(fā)度也最高。/
3、頁面鎖: 開銷和加鎖時間界于表鎖和行鎖之間; 會出現(xiàn)死鎖; 鎖定粒度界于表鎖和行鎖之間, 并發(fā)度一般。
2、MySQL 中有哪些不同的表格?
共有 5 種類型的表格: 1、MyISAM2、Heap 3、Merge 4、INNODB 5、MISAM
3、MySQL 中InnoDB 支持的四種事務(wù)隔離級別名稱,以及逐級之間的區(qū)別?SQL 標(biāo)準(zhǔn)定義的四個隔離級別為:
1、read uncommited : 讀到未提交數(shù)據(jù)
2、read committed: 臟讀, 不可重復(fù)讀
3、repeatable read: 可重讀
4、serializable : 串行事物
4、CHAR 和VARCHAR 的區(qū)別?
1、CHAR 和 VARCHAR 類型在存儲和檢索方面有所不同
2、CHAR 列長度固定為創(chuàng)建表時聲明的長度, 長度值范圍是 1 到 255 當(dāng) CHAR 值被存儲時, 它們被用空格填充到特定長度, 檢索 CHAR 值時需刪除尾隨空格。
5、主鍵和候選鍵有什么區(qū)別?
表格的每一行都由主鍵唯一標(biāo)識,一個表只有一個主鍵。
主鍵也是候選鍵。按照慣例, 候選鍵可以被指定為主鍵, 并且可以用于任何外鍵引用。
6、myisamchk 是用來做什么的?
它用來壓縮 MyISAM 表,這減少了磁盤或內(nèi)存使用。MyISAM Static和 MyISAM Dynamic 有什么區(qū)別?在 MySAM Static 上的所有字段有固定寬度。動態(tài) MyISAM 表將具有像 TEXT,BLOB 等字段,以適應(yīng)不同長度的數(shù)據(jù)類型
MyISAM Static 在受損情況下更容易恢復(fù)
7、如果一個表有一列定義為TIMESTAMP,將發(fā)生什么?
每當(dāng)行被更改時,時間戳字段將獲取當(dāng)前時間戳。列設(shè)置為 AUTOINCREMENT 時,如果在表中達(dá)到最大值,會發(fā)生什么情況?它會停止遞增,任何進(jìn)一步的插入都將產(chǎn)生錯誤,因為密鑰已被使用。
怎樣才能找出最后一次插入時分配了哪個自動增量? LAST_INSERT_ID 將返回由 Auto increment 分配的最后一個值,并且不需要指定表名稱。
以上就是“程序員必備:Mysql數(shù)據(jù)庫優(yōu)化面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動力節(jié)點Java官網(wǎng)。
0基礎(chǔ) 0學(xué)費 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)