2020年最新“MySQL資料庫高頻面試題解析+Mysql問題分析思維導圖”
阿新 • • 發佈:2020-10-17
前言:
本文涵蓋100道MySQL資料庫高頻面試題解析+Mysql問題分析思維導圖;沒有那麼多廢話,文章有點幹,除了乾貨就是乾貨。滿是誠意,建議收藏
MySQL 100道高頻面試題:
- 1. MySQL 索引使用有哪些注意事項呢?
- 2. MySQL 遇到過死鎖問題嗎,你是如何解決的?
- 3. 日常工作中你是怎麼優化SQL的?
- 4. 說說分庫與分表的設計
- 5. InnoDB與MyISAM的區別
- 6. 資料庫索引的原理,為什麼要用 B+樹,為什麼不用二叉樹?
- 7. 聚集索引與非聚集索引的區別
- 8. limit 1000000 載入很慢的話,你是怎麼解決的呢?
- 9. 如何選擇合適的分散式主鍵方案呢?
- 10. 事務的隔離級別有哪些?MySQL的預設隔離級別是什麼?
- 11. 什麼是幻讀,髒讀,不可重複讀呢?
- 12. 在高併發情況下,如何做到安全的修改同一行資料?
- 13. 資料庫的樂觀鎖和悲觀鎖。
- 14. SQL優化的一般步驟是什麼,怎麼看執行計劃(explain),如何理解其中各個欄位的含義。
- 15. select for update有什麼含義,會鎖表還是鎖行還是其他。
- 16. MySQL事務得四大特性以及實現原理
- 17. 如果某個表有近千萬資料,CRUD比較慢,如何優化。
- 18. 如何寫sql能夠有效的使用到複合索引。
- 19. mysql中in 和exists的區別。
- 20. 資料庫自增主鍵可能遇到什麼問題。
- 21. MVCC熟悉嗎,它的底層原理?
- 22. 資料庫中介軟體瞭解過嗎,sharding jdbc,mycat?
- 23. MYSQL的主從延遲,你怎麼解決?
- 24. 說一下大表查詢的優化方案
- 25. 什麼是資料庫連線池?為什麼需要資料庫連線池呢?
- 26. 一條SQL語句在MySQL中如何執行的?
- 27. InnoDB引擎中的索引策略,瞭解過嗎?
- 28. 資料庫儲存日期格式時,如何考慮時區轉換問題?
- 29. 一條sql執行過長的時間,你如何優化,從哪些方面入手?
- 30. MYSQL資料庫伺服器效能分析的方法命令有哪些?
- 31. Blob和text有什麼區別?
- 32. mysql裡記錄貨幣用什麼欄位型別比較好?
- 33. Mysql中有哪幾種鎖,列舉一下?
- 34. Hash索引和B+樹區別是什麼?你在設計索引是怎麼抉擇的?
- 35. mysql 的內連線、左連線、右連線有什麼區別?
- 36. 說說MySQL 的基礎架構圖
- 37. 什麼是內連線、外連線、交叉連線、笛卡爾積呢?
- 38. 說一下資料庫的三大正規化
- 39. mysql有關許可權的表有哪幾個呢?
- 40. Mysql的binlog有幾種錄入格式?分別有什麼區別?
- 41. InnoDB引擎的4大特性,瞭解過嗎
- 42. 索引有哪些優缺點?
- 43. 索引有哪幾種類型?
- 44. 建立索引有什麼原則呢?
- 45. 建立索引的三種方式
- 46. 百萬級別或以上的資料,你是如何刪除的?
- 47. 什麼是最左字首原則?什麼是最左匹配原則?
- 48. B樹和B+樹的區別,資料庫為什麼使用B+樹而不是B樹?
- 49. 覆蓋索引、回表等這些,瞭解過嗎?
- 50. B+樹在滿足聚簇索引和覆蓋索引的時候不需要回表查詢資料?
- 51. 何時使用聚簇索引與非聚簇索引
- 52. 非聚簇索引一定會回表查詢嗎?
- 53. 組合索引是什麼?為什麼需要注意組合索引中的順序?
- 54. 什麼是資料庫事務?
- 55. 隔離級別與鎖的關係
- 56. 按照鎖的粒度分,資料庫鎖有哪些呢?鎖機制與InnoDB鎖演算法
- 57. 從鎖的類別角度講,MySQL都有哪些鎖呢?
- 58. MySQL中InnoDB引擎的行鎖是怎麼實現的?
- 59. 什麼是死鎖?怎麼解決?
- 60. 為什麼要使用檢視?什麼是檢視?
- 61. 檢視有哪些特點?哪些使用場景?
- 62. 檢視的優點,缺點,講一下?
- 63. count(1)、count(*) 與 count(列名) 的區別?
- 64. 什麼是遊標?
- 65. 什麼是儲存過程?有哪些優缺點?
- 66. 什麼是觸發器?觸發器的使用場景有哪些?
- 67. MySQL中都有哪些觸發器?
- 68. 超鍵、候選鍵、主鍵、外來鍵分別是什麼?
- 69. SQL 約束有哪幾種呢?
- 70. 談談六種關聯查詢,使用場景。
- 71. varchar(50)中50的涵義
- 72. mysql中int(20)和char(20)以及varchar(20)的區別
- 73. drop、delete與truncate的區別
- 74. UNION與UNION ALL的區別?
- 75. SQL的生命週期?
- 76. 一條Sql的執行順序?
- 77. 列值為NULL時,查詢是否會用到索引?
- 78. 關心過業務系統裡面的sql耗時嗎?統計過慢查詢嗎?對慢查詢都怎麼優化過?
- 79. 主鍵使用自增ID還是UUID,為什麼?
- 80. mysql自增主鍵用完了怎麼辦?
- 81. 欄位為什麼要求定義為not null?
- 82. 如果要儲存使用者的密碼雜湊,應該使用什麼欄位進行儲存?
- 83. Mysql驅動程式是什麼?
- 84. 如何優化長難的查詢語句?有實戰過嗎?
- 85. 優化特定型別的查詢語句
- 86. MySQL資料庫cpu飆升的話,要怎麼處理呢?
- 87. 讀寫分離常見方案?
- 88. MySQL的複製原理以及流程
- 89. MySQL中DATETIME和TIMESTAMP的區別
- 90. Innodb的事務實現原理?
- 91. 談談MySQL的Explain
- 92. Innodb的事務與日誌的實現方式
- 93. MySQL中TEXT資料型別的最大長度
- 94. 500臺db,在最快時間之內重啟。
- 95. 你是如何監控你們的資料庫的?你們的慢日誌都是怎麼查詢的?
- 96. 你是否做過主從一致性校驗,如果有,怎麼做的,如果沒有,你打算怎麼做?
- 97. 你們資料庫是否支援emoji表情儲存,如果不支援,如何操作?
- 98. MySQL如何獲取當前日期?
- 99. 一個6億的表a,一個3億的表b,通過外間tid關聯,你如何最快的查詢出滿足條件的第50000到第50200中的這200條資料記錄。
- 100. Mysql一條SQL加鎖分析
Mysql問題分析思維導圖
由於文章篇幅原因,完整MySQL面試題解析不能全部上傳;需要這份思維導圖和100到MySQL面試題的往下看!