MySQL 面試題 14 道

1.主鍵(primary key)和候選鍵(candidate key)有什么區(qū)別?
2. NOW() 和 CURRENT_DATE() 有什么區(qū)別?
3. MySQL 表中允許多少個觸發(fā)器?
插入前
插入后
更新前
更新后
刪除前
刪除后
4.我們可以為索引創(chuàng)建多少列?
16
5. 如何將數(shù)據(jù)從一張表復制到另一張表?
NSERT INTO table2 (id,uid,changed,status,assign_status) SELECT id,uid,now(),'Pending','Assigned' FROM table1
6.如何在不復制數(shù)據(jù)的情況下復制表?
CREATE TABLE users_bck SELECT * FROM users WHERE 1=0;
7.什么是 MySQL?
MySQL 是一個免費提供的開源關系數(shù)據(jù)庫管理系統(tǒng) (RDBMS),它使用結構化查詢語言 (SQL)。
SQL 是用于在數(shù)據(jù)庫中添加、訪問和管理內(nèi)容的最流行的語言。它以其快速處理、久經(jīng)考驗的可靠性、易用性和使用靈活性而著稱。MySQL 是幾乎每個開源 PHP 應用程序的重要組成部分。基于 PHP 和 MySQL 的腳本的好例子是 WordPress、Joomla、Magento 和 Drupal。
8.列出MySQL的特點?
關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS):MySQL 是一個關系數(shù)據(jù)庫管理系統(tǒng)。
易于使用:MySQL 易于使用。您只需掌握 SQL 的基本知識。只需幾個簡單的 SQL 語句,您就可以構建 MySQL 并與之交互。
它是安全的:MySQL 包含一個可靠的數(shù)據(jù)安全層,可以保護敏感數(shù)據(jù)免受入侵者的侵害。密碼在 MySQL 中是加密的。
它是可擴展的:MySQL 可以處理幾乎任何數(shù)量的數(shù)據(jù),多達 5000 萬行或更多。默認文件大小限制約為 4 GB。但是,您可以將此數(shù)字增加到 8 TB 數(shù)據(jù)的理論限制。
在許多操作系統(tǒng)上兼容:MySQL 兼容在許多操作系統(tǒng)上運行。
允許回滾:MySQL 允許事務回滾、提交和崩潰恢復。
高性能:由于其獨特的存儲引擎架構,MySQL 更快、更可靠、更便宜。
高靈活性:MySQL 支持大量的嵌入式應用程序,這使得 MySQL 非常靈活。
高生產(chǎn)力:MySQL 使用觸發(fā)器、存儲過程和視圖,允許開發(fā)人員提供更高的生產(chǎn)力。
9. transaction 和 ACID 屬性是什么意思?
事務是工作的邏輯單元,應該執(zhí)行所有步驟或不執(zhí)行任何步驟。ACID 是原子性、一致性、隔離性和持久性的縮寫,它們是任何事務的屬性。
10. 什么是堆表?
堆是沒有聚集索引的表。可以在存儲為堆的表上創(chuàng)建一個或多個非聚集索引。數(shù)據(jù)存儲在堆中而不指定順序。通常數(shù)據(jù)最初是按照行插入表中的順序存儲的,但是數(shù)據(jù)庫引擎可以在堆中移動數(shù)據(jù)以有效地存儲行;因此無法預測數(shù)據(jù)順序。要保證從堆返回的行的順序,您必須使用 ORDER BY 子句。要指定行的存儲順序,請在表上創(chuàng)建聚集索引,使表不是堆。
11. 聚集表與堆表
堆表
數(shù)據(jù)不按任何特定順序存儲
具體數(shù)據(jù)不能快速檢索,除非也有非聚集索引
數(shù)據(jù)頁未鏈接,因此順序訪問需要回溯到索引分配映射 (IAM) 頁
由于沒有聚集索引,因此不需要額外的時間來維護索引
由于沒有聚集索引,所以不需要額外的空間來存儲聚集索引樹
這些表在 sys.indexes 目錄視圖中的 index_id 值為 0
集群表
數(shù)據(jù)按照聚集索引鍵的順序存儲
如果查詢使用索引列,可以根據(jù)聚集索引鍵快速檢索數(shù)據(jù)
鏈接數(shù)據(jù)頁以實現(xiàn)更快的順序訪問
需要額外的時間來維護基于 INSERTS、UPDATES 和 DELETES 的聚集索引
需要額外的空間來存儲聚集索引樹
這些表在 sys.indexes 目錄視圖中的 index_id 值為 1
12. 區(qū)分 FLOAT 和 DOUBLE?
以下是 FLOAT 和 DOUBLE 的區(qū)別:
浮點數(shù)以八位精度存儲在 FLOAT 中,它有四個字節(jié)。
浮點數(shù)以 18 位精度存儲在 DOUBLE 中,它有 8 個字節(jié)。
13. 使用 CREATE 語句可以創(chuàng)建哪些對象?
以下對象是使用 CREATE 語句創(chuàng)建的:
DATABASE
EVENT
FUNCTION
INDEX
PROCEDURE
TABLE
TRIGGER
USER
VIEW
14.主鍵和唯一鍵有什么區(qū)別
雖然兩者都用于強制定義的列的唯一性,但主鍵會創(chuàng)建聚集索引,而唯一鍵會在列上創(chuàng)建非聚集索引。主鍵不允許'NULL',但唯一鍵允許它。
鏈接:https://www.linuxmi.com/git-stash.html
(版權歸原作者所有,侵刪)
10T 技術資源大放送!包括但不限于:Linux、虛擬化、容器、云計算、網(wǎng)絡、Python、Go 等。在開源Linux公眾號內(nèi)回復「10T」,即可免費獲取!
shell編程100例(附PDF下載)
IPv6技術白皮書(附PDF下載)
Linux主流發(fā)行版本配置IP總結(Ubuntu、CentOS、Redhat、Suse)
批量安裝Windows系統(tǒng)
無人值守批量安裝服務器
運維必備的《網(wǎng)絡端口大全》,看這一份就夠了。
收藏:服務器和存儲知識入門
什么叫SSH?原理詳解,看這一篇就夠了!
Nginx面試40問(收藏吃灰)
20 個 Linux 服務器性能調(diào)優(yōu)技巧
超詳細!一文帶你了解LVS四層負載均衡企業(yè)級實踐!
收藏 | Linux系統(tǒng)日志位置及包含的日志內(nèi)容介紹
100 道 Linux 常見面試題,建議收藏,慢慢讀~
服務器12種基本故障+排查方法
IT運維管理常用工具大全,讓你成為真正的高手
什么是QoS?
有收獲,點個在看


