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/