Redis命令行查閱手冊大全
Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日志型、Key-Value數據庫,並提供多種語言的API。本文是Redis命令行查閱手冊大全,基本上涵蓋了Redis所有的命令,並附有命令描述進行說明;大家可以收藏、查看,文末並附有辛苦收集到資源《Redis命令參考手冊完整版.pdf》作為福利免費提供給大家,僅作為學習參考使用。
一、Redis key(鍵)
key(鍵) |
| 序號 |
命令 |
命令描述 |
| 1 |
del key [key ...]
|
刪除給定的一個或多個 key
|
| 2 |
keys pattern
|
查找所有符合給定模式 pattern 的 key(有3個通配符 *、?、[],特殊符號用 \ 隔開)
|
| 3 |
randomkey
|
從當前數據庫中隨機返回(不刪除)一個 key
|
| 4 |
ttl key
|
以秒為單位,返回給定 key 的剩余生存時間(TTL, time to live)
|
| 5 |
pttl key
|
以毫秒為單位,返回給定 key 的剩余生存時間 |
| 6 |
exists key
|
檢查給定 key 是否存在
|
| 7 |
move key db
|
將當前數據庫的 key 移動到給定的數據庫 db 當中
|
| 8 |
rename key newkey
|
將 key 改名為 newkey
|
| 9 |
renamenx key newkey
|
如果 newkey 不存在時,將 key 改名為 newkey
|
| 10 |
type key
|
返回 key 所儲存的值的類型
|
| 11 |
expire key seconds
|
為給定 key 設置生存時間,當 key 過期時(生存時間為 0 ),它會被自動刪除
|
| 12 |
pexpire key milliseconds
|
以毫秒為單位設置 key 的生存時間(與EXPIRE 命令的作用類似)
|
| 13 |
expireat key timestamp
|
與EXPIRE 命令的作用類似,不同在於 EXPIREAT 命令接受的時間參數是 UNIX 時間戳(unix timestamp)
|
| 14 |
pexpireat key milliseconds
|
以毫秒為單位設置 key 的生存時間(與EXPIREAT 命令的作用類似) |
| 15 |
persist key
|
移除給定 key 的生存時間
|
| 16 |
sort key
|
返回或保存給定列表、集合、有序集合 key 中經過排序的元素
|
| 17 |
object subcommand [arguments [arguments]]
|
object 命令允許從內部察看給定 key 的 Redis 對象
|
| 18 |
migrate host port key destination
- db timeout
|
將 key 原子性地從當前實例傳送到目標實例的指定數據庫上,一旦傳送成功, key 保
證會出現在目標實例上,而當前實例上的 key 會被刪除
|
| 19 |
dump key
|
序列化給定 key ,並返回被序列化的值 |
| 20 |
restore key ttl serialized-value
|
反序列化給定的序列化值,並將它和給定的 key 關聯
|
二、Redis String(字符串)
String(字符串) |
| 序號 |
命令 |
命令描述 |
| 1 |
set key value
|
將字符串值 value 關聯到 key;如果 key 已經持有其他值, SET 就覆寫舊值,無視類型
|
| 2 |
setnx key value
|
將 key 的值設為 value ,當且僅當 key 不存在;若給定的 key 已經存在,則 SETNX 不做任何動作
|
| 3 |
setex key seconds value
|
將值 value 關聯到 key ,並將 key 的生存時間設為 seconds (以秒為單位);如果 key 已經存在, SETEX 命令將覆寫舊值。
|
| 4 |
psetex key milliseconds value
|
以毫秒為單位設置 key 的生存時間(與SETEX 命令相似)
|
| 5 |
setrange key offset value
|
用 value 參數覆寫(overwrite)給定 key 所儲存的字符串值,從偏移量 offset 開始;不存在的 key 當作空白字符串處理
|
| 6 |
mset key value [key value ...]
|
同時設置一個或多個 key-value 對
|
| 7 |
msetnx key value [key value ...]
|
用於所有給定 key 都不存在時,同時設置一個或多個 key-value 對 |
| 8 |
append key value
|
將 value 追加到 key 原來的值的末尾
|
| 9 |
get key
|
用於獲取指定 key 的值。如果 key 不存在,返回 nil 。如果key 儲存的值不是字符串類型,返回一個錯誤 |
| 10 |
mget key [key ...]
|
返回所有(一個或多個)給定 key 的值
|
| 11 |
getrange key start end
|
返回 key 中字符串值的子字符串,字符串的截取范圍由 start 和 end 兩個偏移量決定(包括 start 和 end 在內)
|
| 12 |
getset key value
|
將給定 key 的值設為 value ,並返回 key 的舊值(old value);當 key 存在但不是字符串類型時,返回一個錯誤
|
| 13 |
strlen key
|
返回 key 所儲存的字符串值的長度;當 key 儲存的不是字符串值時,返回
一個錯誤
|
| 14 |
decrby key decrement
|
將 key 所儲存的值減去減量 decrement
|
| 15 |
incr key
|
將 key 中儲存的數字值增一
|
| 16 |
incrby key increment
|
將 key 所儲存的值加上增量 increment
|
| 17 |
incrbyfloat key increment
|
為 key 中所儲存的值加上浮點數增量 increment
|
| 18 |
setbit key offset value
|
對 key 所儲存的字符串值,設置或清除指定偏移量上的位(bit)
|
| 19 |
getbit key offset
|
對 key 所儲存的字符串值,獲取指定偏移量上的位(bit)
|
| 20 |
bitop operation destkey key [key ...]
|
對一個或多個保存二進制位的字符串 key 進行位元操作,並將結果保存到 destkey 上
|
| 21 |
bitcount key [start] [end]
|
計算給定字符串中,被設置為 1 的比特位的數量
|
三、Redis Hash(哈希表)
Hash(哈希表) |
| 序號 |
命令 |
命令描述 |
| 1 |
hset key field value
|
將哈希表 key 中的域 field 的值設為 value;如果 key 不存在,一個新的哈希表被創建並進行 HSET 操作
|
| 2 |
hsetnx key field value
|
將哈希表 key 中的域 field 的值設置為 value ,當且僅當域 field 不存在
|
| 3 |
hmset key field value [field value ...]
|
同時將多個 field-value (域-值)對設置到哈希表 key 中
|
| 4 |
hget key field
|
返回哈希表 key 中給定域 field 的值
|
| 5 |
hmget key field [field ...]
|
返回哈希表 key 中,一個或多個給定域的值;如果給定的域不存在於哈希表,那么返回一個 nil 值
|
| 6 |
hgetall key
|
返回哈希表 key 中,所有的域和值
|
| 7 |
hdel key field [field ...]
|
刪除哈希表 key 中的一個或多個指定域,不存在的域將被忽略
|
| 8 |
hlen key
|
返回哈希表 key 中域的數量
|
| 9 |
hexists key field
|
查看哈希表 key 中,給定域 field 是否存在
|
| 10 |
hincrby key field increment
|
為哈希表 key 中的域 field 的值加上增量 increment
|
| 11 |
hincrbyfloat key field increment
|
為哈希表 key 中的域 field 加上浮點數增量 increment
|
| 12 |
hkeys key
|
返回哈希表 key 中的所有域
|
| 13 |
hvals key
|
返回哈希表 key 中所有域的值
|
四、Redis List(列表)
List(列表) |
| 序號 |
命令 |
命令描述 |
| 1 |
lpush key value [value ...]
|
將一個或多個值 value 插入到列表 key 的表頭
|
| 2 |
lpushx key value
|
將值 value 插入到列表 key 的表頭,當且僅當 key 存在並且是一個列表
|
| 3 |
rpush key value [value ...]
|
將一個或多個值 value 插入到列表 key 的表尾(最右邊)
|
| 4 |
rpushx key value
|
將值 value 插入到列表 key 的表尾,當且僅當 key 存在並且是一個列表
|
| 5 |
lpop key
|
移除並返回列表 key 的頭元素
|
| 6 |
rpop key
|
移除並返回列表 key 的尾元素
|
| 7 |
blpop key [key ...] timeout
|
移出並獲取列表的第一個元素, 如果列表沒有元素會阻塞列表直到等待超時或發現可彈出元素為止 |
| 8 |
brpop key [key ...] timeout
|
移出並獲取列表的最后一個元素, 如果列表沒有元素會阻塞列表直到等待超時或發現可彈出元素為止 |
| 9 |
llen key
|
返回列表 key 的長度
|
| 10 |
lrange key start stop
|
返回列表 key 中指定區間內的元素,區間以偏移量 start 和 stop 指定
|
| 11 |
lrem key count value
|
根據參數 count 的值,移除列表中與參數 value 相等的元素
|
| 12 |
lset key index value
|
將列表 key 下標為 index 的元素的值設置為 value
|
| 13 |
ltrim key start stop
|
對一個列表進行修剪(trim),就是說,讓列表只保留指定區間內的元素,不在指定區間之內的元素都將被刪除 |
| 14 |
lindex key index
|
返回列表 key 中,下標為 index 的元素
|
| 15 |
rpoplpush source destination
|
移除列表的最后一個元素,並將該元素添加到另一個列表並返回 |
| 16 |
brpoplpush source destination timeout
|
從列表中彈出一個值,將彈出的元素插入到另外一個列表中並返回它; 如果列表沒有元素會阻塞列表直到等待超時或發現可彈出元素為止 |
五、Redis Set(集合)
Set(集合) |
| 序號 |
命令 |
命令描述 |
| 1 |
sadd key member [member ...]
|
將一個或多個 member 元素加入到集合 key 當中,已經存在於集合的 member 元素將被忽略
|
| 2 |
srem key member [member ...]
|
移除集合 key 中的一個或多個 member 元素,不存在的 member 元素會被忽略;當 key 不是集合類型,返回一個錯誤
|
| 3 |
smembers key
|
返回集合 key 中的所有成員
|
| 4 |
sismember key member
|
判斷 member 元素是否集合 key 的成員
|
| 5 |
scard key
|
返回集合 key 的基數(集合中元素的數量)
|
| 6 |
smove source destination member
|
將 member 元素從 source 集合移動到 destination 集合
|
| 7 |
spop key
|
移除並返回集合中的一個隨機元素
|
| 8 |
srandmember key [count]
|
如果命令執行時,只提供了 key 參數,那么返回集合中的一個隨機元素
|
| 9 |
sinter key [key ...]
|
返回一個集合的全部成員,該集合是所有給定集合的交集
|
| 10 |
sinterstore destination key [key ...]
|
將給定集合之間的交集存儲在指定的集合中。如果指定的集合已經存在,則將其覆蓋 |
| 11 |
sunion key [key ...]
|
返回一個集合的全部成員,該集合是所有給定集合的並集
|
| 12 |
sdiff key [key ...]
|
返回一個集合的全部成員,該集合是所有給定集合之間的差集
|
| 13 |
sdiffstore destination key [key ...
]
|
將給定集合之間的差集存儲在指定的集合中。如果指定的集合 key 已存在,則會被覆蓋 |
六、Redis Sorted Set(有序集)
Sorted Set(有序集) |
| 序號 |
命令 |
命令描述 |
| 1 |
zadd key score member [[score member] [score member] ...]
|
將一個或多個 member 元素及其 score 值加入到有序集 key 當中
|
| 2 |
zrem key member [member ...]
|
移除有序集 key 中的一個或多個成員,不存在的成員將被忽略;當 key 存在但不是有序集類型時,返回一個錯誤
|
| 3 |
zcard key
|
返回有序集 key 的基數
|
| 4 |
zcount key min max
|
返回有序集 key 中, score 值在 min 和 max 之間(默認包括 score 值等於 min 或 max )的成員的數量
|
| 5 |
zscore key member
|
返回有序集 key 中,成員 member 的 score 值;如果 member 元素不是有序集 key 的成員,或 key 不存在,返回 nil
|
| 6 |
zincrby key increment member
|
為有序集 key 的成員 member 的 score 值加上增量 increment
|
| 7 |
zrevrange key start stop [WITHSCORES]
|
返回有序集 key 中,指定區間內的成員
|
| 8 |
zrangebyscore key min max [WITHSCORES] [LIMIT offset count]
|
返回有序集 key 中,所有 score 值介於 min 和 max 之間(包括等於 min 或 max ) 的成員。有序集成員按 score 值遞增(從小到大)次序排列
|
| 9 |
zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count]
|
返回有序集 key 中, 所有score 值介於 max 和 min 之間(包括等於 max 或 min ) 的成員。有序集成員按 score 值遞減(從大到小)次序排列
|
| 10 |
zrank key member
|
返回有序集 key 中成員 member 的排名。其中有序集成員按 score 值遞增(從小到大) 順序排列
|
| 11 |
zrevrank key member
|
返回有序集 key 中成員 member 的排名。其中有序集成員按 score 值遞減(從大到小) 順序排列
|
| 12 |
zremrangebyrank key start stop
|
移除有序集 key 中,指定排名(rank)區間內的所有成員
|
| 13 |
zremrangebyscore key min max
|
移除有序集 key 中,所有 score 值介於 min 和 max 之間(包括等於 min 或 max ) 的成員
|
| 14 |
zunionstore destination numkeys key [key ...] [WEIGHTS weight [weight ...]]
[AGGREGATE SUM|MIN|MAX]
|
計算給定的一個或多個有序集的並集,其中給定 key 的數量必須以 numkeys 參數指定, 並將該並集(結果集)儲存到 destination
|
七、Redis Pub/Sub(發布/訂閱)
Pub/Sub(發布/訂閱) |
| 序號 |
命令 |
命令描述 |
| 1 |
publish channel message
|
將信息 message 發送到指定的頻道 channel
|
| 2 |
subscribe channel [channel ...]
|
訂閱給定的一個或多個頻道的信息
|
| 3 |
psubscribe pattern [pattern ...]
|
訂閱一個或多個符合給定模式的頻道
|
| 4 |
unsubscribe [channel [channel ...
]]
|
指示客戶端退訂給定的頻道
|
| 5 |
punsubscribe [pattern [pattern ...
]]
|
指示客戶端退訂所有給定模式
|
八、Redis Transaction(事務)
Transaction(事務) |
| 序號 |
命令 |
命令描述 |
| 1 |
watch key [key ...] |
監視一個(或多個) key ,如果在事務執行之前這個(或這些) key 被其他命令所改動,那么事務將被打斷 |
| 2 |
unwatch |
用於取消 unwatch 命令對所有 key 的監視 |
| 3 |
multi |
標記一個事務塊的開始
|
| 4 |
discard |
用於取消事務,放棄執行事務塊內的所有命令 |
| 5 |
exec |
用於執行所有事務塊內的命令 |
九、Redis Script(腳本)
Script(腳本) |
| 序號 |
命令 |
命令描述 |
| 1 |
eval script numkeys key [key ...] arg [arg ...]
|
使用 Lua 解釋器執行腳本 |
| 2 |
evalsha sha1 numkeys key [key ...] arg [arg ...]
|
根據給定的 sha1 校驗碼,對緩存在服務器中的腳本進行求值
|
| 3 |
script load script
|
將腳本 script 添加到腳本緩存中,但並不立即執行這個腳本
|
| 4 |
script exists script [script ...]
|
用於校驗指定的腳本是否已經被保存在緩存當中 |
| 5 |
script kill |
用於殺死當前正在運行的 Lua 腳本,當且僅當這個腳本沒有執行過任何寫操作時,這個命令才生效 |
| 6 |
script Flush |
用於清除所有 Lua 腳本緩存 |
十、Redis Connection(連接)
Connection(連接) |
| 序號 |
命令 |
命令描述 |
| 1 |
auth password |
用於檢測給定的密碼和配置文件中的密碼是否相符 |
| 2 |
ping |
使用客戶端向 Redis 服務器發送一個 ping,如果服務器運作正常的話,會返回一個 PONG |
| 3 |
select index |
用於切換到指定的數據庫,數據庫索引號 index 用數字值指定,以 0 作為起始索引值 |
| 4 |
echo message |
打印一個特定的信息 message ,測試時使用
|
| 5 |
quit |
用於關閉與當前客戶端與redis服務的連接 |
十一、Redis Server(服務器)
Server(服務器) |
| 序號 |
命令 |
命令描述 |
| 1 |
time |
返回當前服務器時間
|
| 2 |
dbsize |
返回當前數據庫的 key 的數量
|
| 3 |
bgrewriteaof |
用於異步執行一個 AOF(AppendOnly File) 文件重寫操作。重寫會創建一個當前 AOF 文件的體積優化版本 |
| 4 |
bgsave |
在后台異步(Asynchronously)保存當前數據庫的數據到磁盤
|
| 5 |
save |
執行一個同步保存操作,將當前 Redis 實例的所有數據快照(snapshot)以
RDB 文件的形式保存到硬盤
|
| 6 |
lastsave |
返回最近一次 Redis 成功將數據保存到磁盤上的時間,以 UNIX 時間戳格式表示
|
| 7 |
slaveof host port |
用於在 Redis 運行時動態地修改復制(replication)功能的行為
|
| 8 |
flushall |
清空整個 Redis 服務器的數據(刪除所有數據庫的所有 key )
|
| 9 |
flushdb |
清空當前數據庫中的所有 key
|
| 10 |
shutdown |
停止所有客戶端;如果有至少一個保存點在等待,執行 SAVE 命令如果 AOF 選項被打開,更新 AOF 文件關閉 redis 服務器(server) |
| 11 |
slowlog subcommand [argument]
|
用來記錄查詢執行時間的日志系統 |
| 12 |
info [section] |
以一種易於解釋(parse)且易於閱讀的格式,返回關於 Redis 服務器的各種信息和統 計數值
|
| 13 |
config get parameter |
用於獲取 redis 服務的配置參數 |
| 14 |
config set parameter value |
可以動態地調整 Redis 服務器的配置(configuration)而無須重啟 |
| 15 |
config resetstat |
用於重置 info 命令中的某些統計數據 |
| 16 |
debug object key |
一個調試命令,它不應被客戶端所使用 |
| 17 |
debug segfault |
執行一個非法的內存訪問從而讓 Redis 崩潰,僅在開發時用於 BUG 調試 |
| 18 |
monitor |
實時打印出 Redis 服務器接收到的命令,調試用
|
| 19 |
sync |
用於復制功能(replication)的內部命令
|
| 20 |
client list |
用於返回所有連接到服務器的客戶端信息和統計數據 |
| 21 |
client kill ip:port |
用於關閉客戶端連接 |
| 22 |
client setname connection-name |
為當前連接分配一個名字
|
| 23 |
client getname |
用於返回 client setname 命令為連接設置的名字 |
十二、Redis HyperLogLog
HyperLogLog |
| 序號 |
命令 |
命令描述 |
| 1 |
pfmerge destkey sourcekey [sourcekey ...] |
將多個 HyperLogLog 合並為一個 HyperLogLog ,合並后的 HyperLogLog 的基數估算值是通過對所有 給定 HyperLogLog 進行並集計算得出的 |
| 2 |
pfadd key element [element ...] |
將所有元素參數添加到 HyperLogLog 數據結構中 |
| 3 |
pfadd key element [element ...] |
返回給定 HyperLogLog 的基數估算值 |
十三、Redis 地理位置(geo)
地理位置(geo) |
| 序號 |
命令 |
命令描述 |
| 1 |
geohash |
返回一個或多個位置元素的 geohash 表示 |
| 2 |
geopos |
從key里返回所有給定位置元素的位置(經度和緯度) |
| 3 |
geodist |
返回兩個給定位置之間的距離 |
| 4 |
georadius |
以給定的經緯度為中心, 找出某一半徑內的元素 |
| 5 |
geoadd |
將指定的地理空間位置(緯度、經度、名稱)添加到指定的key中 |
| 6 |
georadiusbymember |
找出位於指定范圍內的元素,中心點是由給定的位置元素決定 |
免費福利☟☟☟☟☟☟
《Redis命令參考手冊完整版.pdf》 https://pan.baidu.com/s/10dwJD-L6HV9a-8Z1C0SfIw 提取碼:4ssw
如果這篇文章能給您提供小小的幫助或思路,麻煩隨手點個小贊,這將成為我努力成長中不可或缺的助力,將激勵我繼續前行!!!