數據庫和緩存面試題


1.列舉常見的關系型數據庫和非關系型數據庫有哪些?

    數據庫本質就是一個C/S的套接字軟件
    常見的數據庫:
        關系型: (表與表之間建立關聯關系,而且表中的字段都有約束條件)
            mysql
            mariadb
            oracle
            db2
            sqlserver

        非關系:
            存取數據都是以key:value
            mongodb 爬蟲用的比較多
            redis
            memcache

2.MySQL常見數據庫引擎及比較?

 

 

3.簡述數據三大范式?

 

4.什么是事務?MySQL如何支持事務?

 

5.簡述數據庫設計中一對多和多對多的應用場景?

 

6.如何基於數據庫實現商城商品計數器?

 

7.常見SQL(必備)
詳見武沛齊博客:https://www.cnblogs.com/wupeiqi/articles/5729934.html

 

8.簡述觸發器、函數、視圖、存儲過程?

 

9.MySQL索引種類

 

10.索引在什么情況下遵循最左前綴的規則?

 

11.主鍵和外鍵的區別?

 

12.MySQL常見的函數?

 

13.列舉 創建索引但是無法命中索引的8種情況。

14.如何開啟慢日志查詢?

15.數據庫導入導出命令(結構+數據)?

16.數據庫優化方案?

17.char和varchar的區別?

18.簡述MySQL的執行計划?

19.在對name做了唯一索引前提下,簡述以下區別:
 
        select * from tb where name = ‘Oldboy-Wupeiqi’ 
 
        select * from tb where name = ‘Oldboy-Wupeiqi’ limit 1

20.1000w條數據,使用limit offset 分頁時,為什么越往后翻越慢?如何解決?

21.什么是索引合並?

22.什么是覆蓋索引?

23.簡述數據庫讀寫分離?

24.簡述數據庫分庫分表?(水平、垂直)

25.redis和memcached比較?

26.redis中數據庫默認是多少個db 及作用?

27.python操作redis的模塊?

28.如果redis中的某個列表中的數據量非常大,如果實現循環顯示每一個值?

29.redis如何實現主從復制?以及數據同步機制?

30.redis中的sentinel的作用?

31.如何實現redis集群?

32.redis中默認有多少個哈希槽?

33.簡述redis的有哪幾種持久化策略及比較?

34.列舉redis支持的過期策略。

35.MySQL 里有 2000w 數據,redis 中只存 20w 的數據,如何保證 redis 中都是熱點數據? 

36.寫代碼,基於redis的列表實現 先進先出、后進先出隊列、優先級隊列。

37.如何基於redis實現消息隊列?

38.如何基於redis實現發布和訂閱?以及發布訂閱和消息隊列的區別?

39.什么是codis及作用?

40.什么是twemproxy及作用?

41.寫代碼實現redis事務操作。

42.redis中的watch的命令的作用?

43.基於redis如何實現商城商品數量計數器?

44.簡述redis分布式鎖和redlock的實現機制。

45.什么是一致性哈希?Python中是否有相應模塊?

46.如何高效的找到redis中所有以oldboy開頭的key?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM