數(shù)據(jù)庫(kù)是程序開(kāi)發(fā)的基礎(chǔ),數(shù)據(jù)庫(kù)相關(guān)的就業(yè)目前也是一片大好,其中,MySQL是當(dāng)下最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)之一,此篇文章中我們就列舉出了數(shù)據(jù)庫(kù)相關(guān)崗位面試的常見(jiàn)技術(shù)性問(wèn)題。
數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)
為什么要使用數(shù)據(jù)庫(kù)
什么是SQL?
什么是MySQL?
數(shù)據(jù)庫(kù)三大范式是什么
mysql有關(guān)權(quán)限的表都有哪幾個(gè)
MySQL的binlog有有幾種錄入格式?分別有什么區(qū)別?
數(shù)據(jù)類型
mysql有哪些數(shù)據(jù)類型
引擎
MySQL存儲(chǔ)引擎MyISAM與InnoDB區(qū)別
MyISAM索引與InnoDB索引的區(qū)別?
InnoDB引擎的4大特性
存儲(chǔ)引擎選擇
索引
什么是索引?
索引有哪些優(yōu)缺點(diǎn)?
索引使用場(chǎng)景(重點(diǎn))
索引有哪幾種類型?
索引的數(shù)據(jù)結(jié)構(gòu)(b樹(shù),hash)
索引的基本原理
索引算法有哪些?
索引設(shè)計(jì)的原則?
創(chuàng)建索引的原則(重中之重)
創(chuàng)建索引的三種方式,刪除索引
創(chuàng)建索引時(shí)需要注意什么?
使用索引查詢一定能提高查詢的性能嗎?為什么
百萬(wàn)級(jí)別或以上的數(shù)據(jù)如何刪除
什么是最左前綴原則?什么是最左匹配原則
B樹(shù)和B+樹(shù)的區(qū)別
使用B樹(shù)的好處
使用B+樹(shù)的好處
Hash索引和B+樹(shù)所有有什么區(qū)別或者說(shuō)優(yōu)劣呢?
數(shù)據(jù)庫(kù)為什么使用B+樹(shù)而不是B樹(shù)
B+樹(shù)在滿足聚簇索引和覆蓋索引的時(shí)候不需要回表查詢數(shù)據(jù),
什么是聚簇索引?何時(shí)使用聚簇索引與非聚簇索引
非聚簇索引一定會(huì)回表查詢嗎?
聯(lián)合索引是什么?為什么需要注意聯(lián)合索引中的順序?
事務(wù)
什么是數(shù)據(jù)庫(kù)事務(wù)?
事物的四大特性(ACID)介紹一下?
什么是臟讀?幻讀?不可重復(fù)讀?
什么是事務(wù)的隔離級(jí)別?MySQL的默認(rèn)隔離級(jí)別是什么?
鎖
對(duì)MySQL的鎖了解嗎
隔離級(jí)別與鎖的關(guān)系
按照鎖的粒度分?jǐn)?shù)據(jù)庫(kù)鎖有哪些?鎖機(jī)制與InnoDB鎖算法
從鎖的類別上分MySQL都有哪些鎖呢?像上面那樣子進(jìn)行鎖定豈不是有點(diǎn)阻礙并發(fā)效率了
MySQL中InnoDB引擎的行鎖是怎么實(shí)現(xiàn)的?
InnoDB存儲(chǔ)引擎的鎖的算法有三種
什么是死鎖?怎么解決?
數(shù)據(jù)庫(kù)的樂(lè)觀鎖和悲觀鎖是什么?怎么實(shí)現(xiàn)的?
視圖
為什么要使用視圖?什么是視圖?
視圖有哪些特點(diǎn)?
視圖的使用場(chǎng)景有哪些?
視圖的優(yōu)點(diǎn)
視圖的缺點(diǎn)
什么是游標(biāo)?
存儲(chǔ)過(guò)程與函數(shù)
什么是存儲(chǔ)過(guò)程?有哪些優(yōu)缺點(diǎn)?
觸發(fā)器
什么是觸發(fā)器?觸發(fā)器的使用場(chǎng)景有哪些?
MySQL中都有哪些觸發(fā)器?
常用SQL語(yǔ)句
SQL語(yǔ)句主要分為哪幾類
超鍵、候選鍵、主鍵、外鍵分別是什么?
SQL 約束有哪幾種?
六種關(guān)聯(lián)查詢
什么是子查詢
子查詢的三種情況
mysql中 in 和 exists 區(qū)別
varchar與char的區(qū)別
varchar(50)中50的涵義
int(20)中20的涵義
mysql為什么這么設(shè)計(jì)
mysql中int(10)和char(10)以及varchar(10)的區(qū)別
FLOAT和DOUBLE的區(qū)別是什么?
drop、delete與truncate的區(qū)別
UNION與UNION ALL的區(qū)別?
SQL優(yōu)化
如何定位及優(yōu)化SQL語(yǔ)句的性能問(wèn)題?創(chuàng)建的索引有沒(méi)有被使用到?或者說(shuō)怎么才可以知道這條語(yǔ)句運(yùn)行很慢的原因?
SQL的生命周期?
大表數(shù)據(jù)查詢,怎么優(yōu)化
超大分頁(yè)怎么處理?
mysql 分頁(yè)
慢查詢?nèi)罩?/p>
關(guān)心過(guò)業(yè)務(wù)系統(tǒng)里面的sql耗時(shí)嗎?統(tǒng)計(jì)過(guò)慢查詢嗎?對(duì)慢查詢都怎么優(yōu)化過(guò)?
為什么要盡量設(shè)定一個(gè)主鍵?
主鍵使用自增ID還是UUID?
字段為什么要求定義為not null?
如果要存儲(chǔ)用戶的密碼散列,應(yīng)該使用什么字段進(jìn)行存儲(chǔ)?
優(yōu)化查詢過(guò)程中的數(shù)據(jù)訪問(wèn)
優(yōu)化長(zhǎng)難的查詢語(yǔ)句
優(yōu)化特定類型的查詢語(yǔ)句
優(yōu)化關(guān)聯(lián)查詢
優(yōu)化子查詢
優(yōu)化LIMIT分頁(yè)
優(yōu)化UNION查詢
優(yōu)化WHERE子句
了解以上面試題的正確答案,歡迎來(lái)到石家莊新華電腦學(xué)校學(xué)習(xí)軟件開(kāi)發(fā)類型相關(guān)專業(yè)進(jìn)行學(xué)習(xí),學(xué)高端技術(shù)、做專業(yè)IT人才,石家莊新華幫助你!
來(lái)源:CSDN網(wǎng)