redis常用命令及高階應用之鍵值的相關命令
阿新 • • 發佈:2019-02-08
keys
返回滿足給定pattern的所有key
例如:返回所有鍵
127.0.0.1:6379> keys *
1) "list3"
2) "myset5"
3) "list6"
4) "myset2"
5) "sset2"
6) "myset6"
7) "list10"
8) "myset1"
9) "pubkey"
10) "list"
11) "list11"
12) "list5"
13) "myset3"
14) "list8"
15) "myset7"
16) "sset1"
17) "list12"
以my開頭的所有的key
127.0.0.1:6379 > keys my*
1) "myset5"
2) "myset2"
3) "myset6"
4) "myset1"
5) "myset3"
6) "myset7"
exists
確認一個key是否存在
127.0.0.1:6379> exists list3
(integer) 1
127.0.0.1:6379> exists name
(integer) 0
返回1則表示存在,返回0則表示不存在
del
刪除一個key
127.0.0.1:6379> exists list3
(integer) 1
127.0.0.1:6379> del list3
(integer) 1
127.0.0.1:6379> exists list3
(integer) 0
expire
設定一個key的過期時間
例如將list6設定10s後過期
127.0.0.1:6379> expire list6 10
(integer) 1
127.0.0.1:6379> ttl list6
(integer) 7
127.0.0.1:6379> ttl list6
(integer) 6
127.0.0.1:6379> ttl list6
(integer) 4
127.0.0.1:6379> ttl list6
(integer) 0
127.0 .0.1:6379> ttl list6
(integer) -2
127.0.0.1:6379> ttl list6
(integer) -2
注:ttl當 key 不存在時,返回 -2 。 當 key 存在但沒有設定剩餘生存時間時,返回 -1 。 否則,以秒為單位,返回 key 的剩餘生存時間。
move
將當前資料庫中的key轉移到其它資料庫中
注:redis預設有0-15號資料庫,進redis後預設是0號資料庫。
例如:將0號資料庫中的一個鍵為age的資料,移動到1號資料庫
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> set age 20
OK
127.0.0.1:6379> get age
"20"
127.0.0.1:6379> exists age
(integer) 1
127.0.0.1:6379> move age 1
(integer) 1
127.0.0.1:6379> get age
(nil)
127.0.0.1:6379> exists age
(integer) 0
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
1) "age"
127.0.0.1:6379[1]> get age
"20"
persist
移出給定key的過期時間
127.0.0.1:6379[1]> expire age 300
(integer) 1
127.0.0.1:6379[1]> ttl age
(integer) 297
127.0.0.1:6379[1]> persist age
(integer) 1
127.0.0.1:6379[1]> ttl age
(integer) -1
127.0.0.1:6379[1]> get age
"20"
注:ttl當 key 不存在時,返回 -2 。 當 key 存在但沒有設定剩餘生存時間時,返回 -1 。 否則,以毫秒為單位,返回 key 的剩餘生存時間。
randomkey
隨機返回key空間的一個key
127.0.0.1:6379> randomkey
"myset7"
127.0.0.1:6379> randomkey
"list5"
127.0.0.1:6379> randomkey
"list11"
127.0.0.1:6379> randomkey
"pubkey"
rename
重新命名key
127.0.0.1:6379[1]> keys *
1) "age"
127.0.0.1:6379[1]> rename age test
OK
127.0.0.1:6379[1]> keys *
1) "test"
type
返回鍵的資料型別
127.0.0.1:6379> type list12
list
127.0.0.1:6379> type sset2
zset
127.0.0.1:6379> type age
string