您好,登錄后才能下訂單哦!
### 數據庫管理
keys pattern # 查找鍵,參數通配符查找
keys * # 查看所有鍵
keys n* # 查看以n開頭的所有鍵
keys *e # 查看以e結尾的所有鍵
keys h?llo
keys h[ae]llo
exists name # 查看name這個鍵是否存在,存在為1,不存在為0
type key # 查看鍵對應的value的類型
type name
del key1 key2 ... # 刪除鍵及對應的值
del addr
rename key newkey # 將鍵的名字從key改成newkey,如果newkey已存在,則覆蓋
rename num1 num3
renamenx key newkey # 將鍵的名字從key改成newkey,如果newkey已存在,則不做動作
renamenx num3 num2
# 通過調用sort命令對列表、集合以及有序集合進行排序
sort key [by pattern] [limit offset count] [get pattern [get pattern]] [asc|desc] [alpha] [store destination]
rpush numbers 9 5 1 3 2
sort numbers # 默認情況下sort命令會將鍵包含的值解釋為浮點數,然后對浮點數進行排序
sort numbers asc
sort numbers desc
sadd names peter jack tom
sort names alpha # 使用alpha讓sort命令基于字典序對文字進行排序
sort numbers limit 0 3 # 不跳過任何值,返回最開頭的三個值
sort numbers limit 3 3 # 逃過最開頭的三個值,然后返回緊接著的三個值
sort numbers store sorted-numbers # 通過指定store destkey,我們將排序結果存儲到destkey中,排序的結果會以列表的形式存儲
randomkey # 從當前數據庫中隨機的返回一個鍵,被返回的鍵不會被刪除
# scan命令以漸進的方式分多次遍歷整個數據庫,并返回匹配給定模式的鍵
# cursor是遍歷時使用的游標,開始新的遍歷時需要將cursor設置為0,每次調用scan,命令都會返回一個新的游標值,再次調用scan需要輸入整個游標值
# match pattern用于指定要匹配的模式
# count number指定這次遍歷最多要返回多少個鍵
scan cursor [match pattern] [count number]
scan 0
sscan key cursor [match pattern] [count number] # 代替可能會阻塞服務器的smembers命令,遍歷集合包含的各個元素
sscan names 0
hscan key cursor [match pattern] [count number] # 代替可能會阻塞服務器的hgetall命令,遍歷散列包含的各個鍵值對
hscan daiby::info 0
zscan key cursor [match pattern] [count number] # 代替可能會阻塞服務器的zrange命令,遍歷有序集合包含的各個元素
zscan "blog::paging" 0
dbsize # 返回數據庫目前包含的鍵值對數量
flushdb # 刪除當前數據庫包含的所有鍵值對
select num # 切換數據庫
move key target-db # 將當前數據庫中的key移動到目標數據庫中,如果目標數據庫已經有同名的key,則不做動作
move numbers 1
flushall # 刪除redis所有數據庫里面的鍵值對
# 鍵過期功能
# expire 和 pexpire的作用是讓鍵在N秒鐘或者N毫秒之后被刪除
# expireat 和 pexpireat的作用則是讓鍵在指定的Unix時間到達之后被刪除
expire key seconds # 設置鍵生存時間,以秒為單位,如果沒有指定過期時間則一直存在,直到使用DEL移除
expire name 5
pexpire key milliseconds # 設置鍵生存時間,以毫秒為單位,一秒鐘等于1000毫秒,redis默認100毫秒一次檢查鍵是否過期
pexpire msg 5500
expireat key timestamp # 設置鍵過期時間,指定秒級Unix時間戳
expireat msg 100000005
pexpireat key milliseconds-timestamp # 設置鍵過期時間,指定毫秒級Unix時間戳
pexpireat msg 100000000000005
pttl key # 查看剩余生存時間,以毫秒為單位
ttl key # 查看剩余生存時間,以秒為單位
ttl age
persist # 刪除生存時間或過期時間
persist msg
setex key seconds value # 設置鍵值及過期時間,以秒為單位
set age 5 18
psetex key millisecond value # 設置鍵值及過期時間,以毫秒為單位;相當于執行了set和pexpire兩個命令
set age 5000 18
### 發布與訂閱
subscribe channel [channel...] # 訂閱給定的一個或多個頻道
subscribe news::it
psubscribe pattern [pattern...] # 訂閱一個或多個模式,pattern參數可以包含glob風格的匹配符(*,[],?)
psubscirbe news::[ie]t
# 退訂命令的行為在各個客戶端的表現都不同,redis-cli直接退出客戶端來退訂,Python和ruby則需要顯示的執行命令
unsubcribe [channel|[channel...]] # 退訂指定的頻道,如果沒有指定則退訂已訂閱的所有頻道
punsubcribe [pattern|[pattern...]] # 退訂指定的模式,如果沒有指定則退訂已訂閱的所有模式
channels # 顯示已訂閱的頻道
publish channel message # 將消息發送至指定的頻道,命令返回收到信息的訂閱者數量
pubsub channels [pattern] # 列出至少有一個訂閱者的頻道
pubsub numsub [channel...] # 返回給定頻道的訂閱者數量
pubsub numpat # 返回被訂閱的模式數量
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。