Redis 笔记(09)— 过期时间 expire(设置、查询、取消过期时间)
生活随笔
收集整理的這篇文章主要介紹了
Redis 笔记(09)— 过期时间 expire(设置、查询、取消过期时间)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 設置過期時間
Redis 使用 expire 命令設置一個鍵的過期時間,到時間后 Redis 會自動刪除它。expire 命令的使用方法為
expire key seconds
其中 seconds 表示鍵的過期時間,單位為秒且必須是整數,最小單位是 1 秒,expire 命令格式如下:
- 返回
1表示設置成功, - 返回
0表示鍵不存在或者設置失敗。
如果想要更精確的過期時間可以使用 pexpire,時間單位是毫秒,pttl 可以查看剩余過期時間。
注意:如果使用
watch命令監控了一個擁有過期時間的鍵,該鍵時間到期自動刪除并不會被watch命令認為該鍵被改變。
127.0.0.1:6379> expire b 10
(integer) 1
127.0.0.1:6379> expire z 10
(integer) 0
127.0.0.1:6379>
2. 查詢過期時間
ttl 命令用于查詢一個鍵還有多久會被刪除,返回值是鍵的剩余時間,單位為秒。
- 當鍵不存在時返回
-2; - 當鍵沒有過期時間即永久存在,那么返回值為
-1;
127.0.0.1:6379> set num 60
OK
127.0.0.1:6379> set a "hello"
OK
127.0.0.1:6379> expire a 60
(integer) 1
127.0.0.1:6379> ttl a
(integer) 53
127.0.0.1:6379> expire z 100
(integer) 0
127.0.0.1:6379> ttl z # 鍵不存在
(integer) -2
127.0.0.1:6379> ttl a # 鍵過期
(integer) -2
127.0.0.1:6379>
127.0.0.1:6379> set b "world"
OK
127.0.0.1:6379> ttl b # 鍵沒有過期時間
(integer) -1
127.0.0.1:6379>
3. 取消過期時間
persist 命令用于設置取消鍵的過期時間,如果過期時間被成功清除則返回 1;否則返回 0。
127.0.0.1:6379> expire d 20
(integer) 1
127.0.0.1:6379> ttl d
(integer) 17
127.0.0.1:6379> persist d
(integer) 1
127.0.0.1:6379> ttl d
(integer) -1
127.0.0.1:6379>
除過使用 persist 命令外,使用 set 命令為鍵賦值也會清除鍵的過期時間。
127.0.0.1:6379> setex a 60 "hello"
OK
127.0.0.1:6379> ttl a
(integer) 57
127.0.0.1:6379> ttl a
(integer) 56
127.0.0.1:6379> set a "world"
OK
127.0.0.1:6379> ttl a
(integer) -1
127.0.0.1:6379>
總結
以上是生活随笔為你收集整理的Redis 笔记(09)— 过期时间 expire(设置、查询、取消过期时间)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022-2028中国快时尚服装市场竞争
- 下一篇: Redis 笔记(10)— 发布订阅模式