1.列舉常見的關係型資料庫和非關係型資料庫有哪些?
資料庫本質就是乙個c/s的套接字軟體
常見的資料庫:
關係型: (表與表之間建立關聯關係,而且表中的字段都有約束條件)
mysql
mariadb
oracle
db2sqlserver
非關係:
訪問資料都是以key:value
mongodb 爬蟲用的比較多
redis
memcache
2.mysql常見資料庫引擎及比較?
3.簡述資料三大正規化?
4.什麼是事務?mysql如何支援事務?
5.簡述資料庫設計中一對多和多對多的應用場景?
6.如何基於資料庫實現**商品計數器?
7.常見sql(必備)
詳見武沛齊部落格:
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?
資料庫和快取(二)
索引種類 索引的作用 exists和in的區別 左連線 右連線 全連線 樂觀鎖 時間戳在運算元據時不加鎖,而是通過時間戳來控制併發出現的問題 悲觀鎖 修改某條資料時,不允許別人讀取該資料。可分為排他鎖和共享鎖 讀鎖和寫鎖 時間戳 在資料庫表中額外加乙個時間戳列timestamp 行級鎖 insert...
redis資料庫的快取擊穿和快取穿透
快取穿透是指查詢乙個一定不存在的資料,由於快取不命中,接著查詢資料庫也無法查詢出結果,因此也不會寫入到快取中,這將會導致每個查詢都會去請求資料庫,造成快取穿透 快取雪崩是指,由於快取層承載著大量請求,有效的保護了儲存層,但是如果快取層由於某些原因整體不能提供服務,於是所有的請求都會達到儲存層,儲存層...
MySQL資料庫快取
原文 mysql 資料庫快取cache功能總結 mysql cache功能分析 1 mysql的cache功能的key的生成原理是 把select語句按照一定的hash規則生成唯一的key,select的結果生成value,即 key value。所以對於cache而言,select語句是區分大小寫...