title: Redis命令大全
date: 2017-05-20 20:47:52
tags:git
Redisgithub
數據庫redis
命令數據庫
Redis是一個key-value存儲系統。和Memcached相似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操做,並且這些操做都是原子性的。在此基礎上,redis支持各類不一樣方式的排序。與memcached同樣,爲了保證效率,數據都是緩存在內存中。區別的是redis會週期性的把更新的數據寫入磁盤或者把修改操做寫入追加的記錄文件,而且在此基礎上實現了master-slave(主從)同步。 緩存
Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合能夠對關係數據庫起到很好的補充做用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。memcached
rpush | lrange | lindex | lpop網站
sadd | smembers | sismember | srem code
hset | hget | hgetall | hdel排序
zadd | zrange | zrangebyscore |
szrem | zrevrank | zrevrange
subscribe | unsubscribe | publish |
psubscribe | punsubscribe
persist | ttl | expire | expireat |
pttl | pexpire | pexpireat
字符串(Strings)
Get key-name
- 獲取存儲在給定鍵中的值
Set key-name
- 獲取存儲在給定鍵中的值
Del key-name
- 刪除存儲在給定鍵中的值(適用於全部類型)
列表(Lists)
RPush list-key item
- 將給定值推入列表的右端
LRange list-key start stop
- 獲取列表在給定範圍上的全部值
LIndex list-key index
- 獲取列表在給定位置上的單個元素
LPop list-key
- 從列表的左端pop出一個值,並返回該值
集合(Sets)
sadd set-key item
- 將給定元素item添加到集合(返回0表示元素已存在於集合中,1表示添加成功)
smembers set-key
- 返回集合中的全部元素
sismember set-key item
- 檢查給定元素item是否存在於集合中
srem set-key item
- 若是item存在於集合中,移除該元素(返回移除元素的數量)
散列(Hashes)
hset hash-key sub-key value
- 在散列中設置給定的鍵值對
hget hash-key sub-key
- 在散列中獲取指定鍵的值
hgetall hash-key
- 獲取散列中全部的鍵值對
hdel hash-key sub-key
- 移除散列中的給定鍵(存在返回1,不存在返回0)
有序集合(Sorted Sets)
zadd zset-key score member
- 將一個帶有給定分值的成員添加到有序集合中
zrange zset-key start stop [withscores]
- 根據元素在有序集合中所處的位置,從有序集合裏面獲取多個元素
zrangebyscore zset-key start stop [withscores]
- 獲取有序集合在給定分值範圍內的全部元素
zrem zset-key member
- 在有序集合中移除給定成員(存在返回1,不存在返回0)
zrevrank zset-key member
- 返回有序集合成員 member的排名,成員按照分值從大到小排列
zrevrange zset-key start stop [withscores]
- 返回有序集合給定排名範圍內的成員,成員按照分值從大到小排列
其餘命令(Other Commands)
sort source-key [BY pattern] [Limit offset count] [Get pattern [Get pattern ...]] [Asc|Desc] [Alpha] [Store dest-key]
- 根據給定的選項,對輸入的列表、集合或者有序集合進行排序,返回或存儲排序的結果
發佈/訂閱(publish/subscribe)
subscribe channel [channel ...]
- 訂閱給定的頻道(一個或多個)
unsubscribe [channel [channel ...]]
- 退訂給定的頻道,若是沒有給定頻道,將退訂全部頻道
publish channel message
- 向給定頻道發送消息
psubscribe pattern [pattern ...]
- 訂閱給定模式匹配的頻道
punsubscribe [pattern [pattern ...]]
- 退訂給定pattern匹配的全部模式,若是沒有給定模式,將退訂全部模式
過時時間(expiring keys)
persist key-name
- 移除鍵的過時時間
ttl key-name
- 查看給定鍵距離過時還有多少秒
expire key-name seconds
- 讓指定鍵在給定秒數後過時
expireat key-name timestamp
- 將給定的過時時間設置爲給定的Unix時間戳
pttl key-name
- 查看給定鍵距離過時還有多少毫秒(version >= 2.6)
pexpire key-name milliseconds
- 讓指定鍵在給定毫秒數後過時(version >= 2.6)
pexpireat key-name timestamp-milliseconds
- 將給定的過時時間設置爲給定的毫秒級精度的Unix時間戳(version >= 2.6)
GitHub: ?https://github.com/microzz
我的網站: ?https://microzz.com/