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