连接Redis
redis-cli #连接redis
redis-cli -h 127.0.0.1 -p 6379 -a auth aklredispass #远程连接redis
select index # 使用 index 号数据库
Key操作
exists key #确认一个key是否存在
del key #删除一个key
type key #返回值的类型
keys pattern #返回满足给定pattern的所有key
randomkey #随机返回key空间的一个key
rename old_name new_name #将key由oldname重命名为newname,若newname存在则删除newname表示的key
dbsize #返回当前数据库中key的数目
expire key time_in_seconds #设定一个key的活动时间(s)
ttl key #获得一个key的活动时间
move key index #将当前数据库中的key转移到有index号数据库
flushdb #删除当前选择数据库中的所有key
flushall #删除所有数据库中的所有key
String操作
set key value #给数据库中名称为key的string赋予值value
get key #返回数据库中名称为key的string的value
getset key value #给名称为key的string赋予值value,并且返回上一次的value
mget key1 key2...keyN #返回库中多个string(它们的名称为key1,key2…)的value
setnx key value #如果不存在名称为key的string,则向库中添加string,名称为key,值为value
setex key time value #向库中添加string(名称为key,值为value)同时,设定过期时间time(秒)
mset key1 value1 key2 value2...keyN valueN #同时给多个string赋值,名称为key i的string赋值value i
msetnx key1 value1 key2 value2...keyN valueN #如果所有名称为key i的string都不存在,则向库中添加string,名称key i赋值为value i
append key value #名称为key的string的值附加value,如果key不存在,append就简单地将给定key设为value
getrange key start end #返回名称为key的string的value的start和end是之间的字串(redis2.0之前用substr)
incr key #名称为key的string增1操作,如果key不存在,那么key的值会先被初始化为0,然后再执行incr操作。(下同)
incrby key integer #名称为key的string增加integer
decr key #名称为key的string减1操作
decrby key integer #名称为key的string减少integer
List操作
lpush key value #在名称为key的list头添加一个值为value的元素
rpush key value #在名称为key的list尾添加一个值为value的元素
llen key #返回名称为key的list的长度
lrange key start end #返回名称为key的list中start至end之间的元素(下标从0开始,下同)
ltrim key start end #截取名称为key的list,保留start至end之间的元素,不在指定区间之内的元素都将被删除
lindex key index #返回名称为key的list中index位置的元素
lset key index value #给名称为key的list中index位置的元素赋值为value
lrem key count value #删除count个名称为key的list中值为value的元素。count为0删除所有值为value的元素
lpop key #返回并删除名称为key的list中的首元素
rpop key #返回并删除名称为key的list中的尾元素
blpop key1 key2...key N timeout #lpop命令的block版本。移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
brpop key1 key2...key N timeout #rpop的block版本。移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
rpoplpush key1 key2 #移除列表key1的最后一个元素,并将该元素添加到另一个列表key2并返回
Set操作
sadd key member #向名称为key的set中添加元素member
srem key member #删除名称为key的set中的元素member
spop key #随机返回并删除名称为key的set中一个元素
smove srckey dstkey member #将member元素从名称为srckey的集合移到名称为dstkey的集合
scard key #返回名称为key的set的数量
smembers key #返回名称为key的set的所有元素
srandmember key #随机返回名称为key的set的一个元素
sismember key member #测试member是否是名称为key的set的元素
sinter key1 key2...key N #求set的交集
sinterstore dstkey key1 key2...key N #求set交集并将交集保存到key为dstkey的set集合
sunion key1 key2...key N #求set并集
sunionstore dstkey key1 key2...key N #求set并集并将并集保存到key为dstkey的set集合
sdiff key1 key2...key N #求set差集
sdiffstore dstkey key1 key2...key N #求set差集并将差集保存到key为dstkey的set集合
Zset(sorted set)操作
zadd key score member #向名称为key的zset中添加元素member,score用于排序。如果该元素已经存在,则根据score更新该元素的顺序
zrem key member #删除名称为key的zset中的元素member
zcard key #返回名称为key的zset的数量
zscore key element #返回名称为key的zset中元素element的score
zincrby key increment member #如果在名称为key的zset中已经存在元素member,则该元素的score增加increment;否则向集合中添加该元素,其score的值为increment
zrank key member #返回名称为key的zset(元素已按score从小到大排序)中member元素的rank(即index,从0开始),若没有member元素,返回nil
zrevrank key member #返回名称为key的zset(元素已按score从大到小排序)中member元素的rank(即index,从0开始),若没有member元素,返回nil
zrange key start end #返回名称为key的zset(元素已按score从小到大排序)中的index从start到end的所有元素
zrevrange key start end #返回名称为key的zset(元素已按score从大到小排序)中的index从start到end的所有元素
zrangebyscore key min max #返回名称为key的zset中score >= min且score <= max的所有元素
zremrangebyrank key min max #删除名称为key的zset中rank >= min且rank <= max的所有元素
zremrangebyscore key min, max #删除名称为key的zset中score >= min且score <= max的所有元素
Hash操作
hset key fieldvalue #向名称为key的hash中添加元素field<—>value
hget key field #返回名称为key的hash中field对应的value
hmget key field1...field N #返回名称为key的hash中field i对应的value
hmset key field1 value1...field N value N #向名称为key的hash中添加元素field i<—>value i
hincrby key field integer #将名称为key的hash中field的value增加integer
hexists key field #名称为key的hash中是否存在键为field的字段
hdel key field #删除名称为key的hash中键为field的字段
hlen key #返回名称为key的hash中元素个数
hkeys key #返回名称为key的hash中所有键
hvals key #返回名称为key的hash中所有键对应的value
hgetall key #返回名称为key的hash中所有的键(field)及其对应的value
HyperLogLog操作
pfadd key element [element ...] #将所有元素参数添加到hyperloglog数据结构中。
pfcount key [key ...] #返回给定hyperloglog的基数估算值。
pfmerge destkey sourcekey [sourcekey ...] #将多个hyperloglog合并为一个hyperloglog,合并后的hyperloglog的基数估算值,是通过对所有给定hyperloglog进行并集计算得出的。