1. key通用操作
1.1 key特征
- key是一個(gè)字符串, 通過key獲取red is中保存的數(shù)據(jù)
1.2 key應(yīng)該設(shè)計(jì)哪些操作?
- 對(duì)于key自身狀態(tài)的相關(guān)操作徘六, 例如:刪除督勺, 判定存在洛搀, 獲取類型等
- 對(duì)于key有效性控制相關(guān)操作, 例如:有效期設(shè)定译打, 判定是否有效彩倚, 有效狀態(tài)的切換等
- 對(duì)于key快速查詢操作, 例如:按指定策略查詢key
1.3 key基本操作
- 刪除指定key
del key
- 獲取key是否存在
exists key
- 獲取key的類型
type key
1.3 key擴(kuò)展操作(時(shí)效性控制)
- 為指定key設(shè)置有效期
expire key seconds
pexpire key milliseconds
expire at key timestamp
pexpire at key milliseconds-timestamp
- 獲取key的有效時(shí)間
ttl key
pttl key
- 切換key從時(shí)效性轉(zhuǎn)換為永久性
persist key
1.4 key擴(kuò)展操作(查詢模式)
- 查詢key
keys pattern
- 查詢模式規(guī)則
· 匹配任意數(shù)量的任意符號(hào)
? 配合一個(gè)任意符號(hào)
[] 匹配一個(gè)指定符號(hào)
keys (查詢所有)
keys it(查詢所有以it開頭)
keys *heima(查詢所有以heim a結(jié)尾)
keys ??heima(查詢所有前面兩個(gè)字符任意扶平, 后面以heima結(jié)尾)
keys user:?(查詢所有以u(píng)ser:開頭帆离, 最后一個(gè)字符任意)
keys u[st]er:1(查詢所有以u(píng)開頭,以er:11結(jié)尾结澄,中間包含一個(gè)字母哥谷,s或t)
1.5 key其他操作
- 為key改名
rename key new key
rename nx key new key
- 對(duì)所有key排序
sort
- 其他key通用操作
help @generic
2. key的重復(fù)問題
- key是由程序員定義的
- redis在使用過程中, 伴隨著操作數(shù)據(jù)量的增加麻献,會(huì)出現(xiàn)大量的數(shù)據(jù)以及對(duì)應(yīng)的key
- 數(shù)據(jù)不區(qū)分種類们妥、類別混雜在一起,極易出現(xiàn)重復(fù)或沖突
- 解決方案
- redis為每個(gè)服務(wù)提供有16個(gè)數(shù)據(jù)庫(kù)勉吻, 編號(hào)從0到15
- 每個(gè)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)相互獨(dú)立
3. db 基本操作
- 切換數(shù)據(jù)庫(kù)
select <index>
- 其他操作
quit
ping
echo <message>
- 數(shù)據(jù)移動(dòng)
move <key> <db>
- 數(shù)據(jù)清除
dbsize
flushdb
flushall