Redis入門到高可用(三) 通用命令

2022-03-30 12:04:21 字數 2354 閱讀 8263

1. keys  #檢視所有key

時間複雜度:o(n),n為資料庫中key的數量。

127.0.0.1:6379> keys *

keys命令一般不在生產環境使用!

原因:生產環境鍵值對比較多;意義不大

想用keys命令怎麼辦?

①熱備從節點(從節點一般不在生產環境使用,可以在從節點上執行此命令)

②使用scan命令代替keys命令

2. dbsize  #計算key的總數

時間複雜度是o(1),內部有計數器,不是遍歷操作的

3. exists  #檢查key是否存在

時間複雜度:o(1)返回值:若key存在,返回1,否則返回0

redis> set db "

redis"ok

redis>exists db

(integer)

1redis>del db

(integer)

1redis>exists db

(integer)

0

4.del key [key ...]  #刪除給定的乙個或多個key

不存在的key會被忽略。

時間複雜度:o(n),n為被刪除的key的數量。刪除單個字串型別的key,時間複雜度為o(1)。

刪除單個列表、集合、有序集合或雜湊表型別的key,時間複雜度為o(m),m為以上資料結構內的元素數量。

返回值:被刪除key的數量。

#  刪除單個 key

redis>set name huangz

okredis>del name

(integer)

1# 刪除乙個不存在的 key

redis>exists phone

(integer)

0redis>del phone # 失敗,沒有 key 被刪除

(integer)

0# 同時刪除多個 key

redis> set name "

redis"ok

redis> set type "

key-value store"ok

redis> set website "

redis.com"ok

redis>del name type website

(integer)

3

5.type key  #返回key所儲存的值的型別。

時間複雜度:o(1)返回值:none(key不存在)

string(字串)

list(列表)

set(集合)

zset(有序集)

hash(雜湊表)

# 字串

redis> set weather "

sunny"ok

redis>type weather

string

# 列表

redis> lpush book_list "

programming in scala

"(integer)

1redis>type book_list

list

# 集合

redis> sadd pat "

dog"

(integer)

1redis>type pat

set

6. expire、ttl、persist

expire key seconds  #key在seconds秒後過期

ttl  key  #檢視key剩餘的過期時間

persist key #去掉key的過期時間

Redis入門到高可用(八) list

key value 結構,value是乙個有序佇列。可進行左邊的新增及彈出,右邊的新增及彈出。可獲取列表的長度,刪除列表中指定元素,獲取列表的子列表,按照索引獲取列表的指定元素。特點 列表有序 可重複 左右兩邊插入彈出。rpush 將乙個或多個值value插入到列表key的表尾 最右邊 lpush ...

redis高可用模式到集群

正常redis是單機的,這樣的話會有乙個問題,如果機器出現問題,不能工作了,那麼redis就停止提供服務了,這對也業務來說是不可接受的,redis可提供的解決方案有哨兵 sentinel codis,cluster集群模型。目前主從同步有兩種模式,增量同步和快照同步 增量同步 1.redis講會影響...

redis 高可用切換 Redis高可用使用方法二

redis高可用使用方法一 redis高可用使用方法三 之前是主從模式下,但如果考慮到主從切換時,對於開發者來說需要更換配置檔案,是乙個不明智的選擇 而官方提供了哨兵模式 當然在官方不提供的前提下方式是有多種解決的 dns,四層等 一 哨兵的配置 cd redis 4.0.12 切換到之前解壓的目錄...