$ redis-server.exe redis.windows.conf //启动服务
$ redis-cli -h host -p port -a password //登录
redis连接
- auth password //验证密码
- ping //检测redis服务是否运行
- echo message //打印字符串
- quit //关闭当前连接
- select index //eg: select 1 //切换到指定数据库1(db1)
key
- del key //key存在时,删除key
- dump key //序列化给定key,并返回序列化的值
- exists key //
- move key db //eg: move name 1 //将当前数据库中的key移动到数据库db1当中、
- randomkey //从当前数据库中随机返回一个key
- rename key newkey //修改key的名称
- renamenx key newkey //仅当newkey不存在时,改名为newkey
- type key //返回key所存储的值的类型
- 其他:key过期时间设置
config set
config get
String
set key value
get key
mget key1 [key2...] //获取所有(一个或多个)给定 key 的值
mset key1 value1 [key2 value2..] //同时设置一个或多个 key-value 对
strlen key //获取字符串长度
getrange key sart end //返回 key 中字符串值的子字符
append key value //如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。
getset key value //将给定 key 的值设为 value ,并返回 key 的旧值(old value)
getbit key offset //???
SETBIT key offset value //???对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。
setex key seconds value //将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。
PSETEX key milliseconds value //和 SETEX 命令相似,但它以毫秒为单位设置 key 的生存时间
setnx key value //只有在key不存在时设置key的值。
setrange key offset value //???用 value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始
incr key //将 key 中储存的数字值增一。
incrby key increment //将 key 所储存的值加上给定的增量值(increment) 。
incrbyfloat key increment //将 key 所储存的值加上给定的浮点增量值(increment) 。
decr key //将 key 中储存的数字值减一。
decrby key decrement //将key所存储的值减去给定的减量值
Hash
hmset key field1 value1 [field2 value2...]
hmset use age 20 //添加字段
hmset user age 22 visitors 23000 //修改、添加字段
hmget key field1 [field2...] //获取所有给定字段的值
hgetall key //获取hash表中指定key的所有字段和值
hset key field value //将哈希表key中的字段field的值设置为value
hsetnx key field value //只有字段field不存在时,设置哈希表字段的值(相当于新增字段)。
hdel key field1 [field2..] //删除一个或多个字段
hexists key field //查看哈希表key中,指定的字段是否存在
hget key field //获取存储在hash表中指定字段的值
hkeys key //获取hash表中的字段
hlen key //获取哈希表中字段的数量
hvals key //获取哈希表中所有值
hincrby key field increment //为哈希表 key 中的指定字段的整数值加上增量 increment 。
hincrbyfloat key field increment //为哈希表 key 中的指定字段的浮点数值加上增量 increment
HSCAN key cursor [MATCH pattern] [COUNT count] //???迭代哈希表中的键值对。
List 元素可以相同
lpush key value1 [value2...] //将一个或多个值插入到列表头部
lpushx key value //将一个值插入到已存在的列表头部
rpush key value1 [value2...] //将一个或多个值插入到列表的尾部
rpushx key value //将一个值插入到已存在的列表尾部
lrange key start end //获取列表指定范围内的元素
llen key //获取列表长度
lindex key index //通过索引获取列表中的元素
linsert key before|after pivot value //在列表的元素前或者后插入元素 //eg: linsert list before oracle redis
lrem key count value //移除列表元素 count>0(正向开始),count<0(逆向开始),count = 0(删除全部值为value的元素)
lset key index value //通过索引设置列表元素的值 //eg. lset list 2 redis
ltrim key start stop //对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除
lpop key //移除并获取列表的第一个元素
rpop key //移出并获取列表的最后一个元素
blpop key timeout //移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
brpop key timeout //移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
rpoplpush source destination //移除列表的最后一个元素,并将该元素添加到另一个列表并返回
brpoplpush source destination timeout //从列表source中弹出最后一个元素,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
}
Set 元素不相同
sadd key memeber1 [member2...] //向集合里添加一个或多个成员
smembers set //返回集合所有成员
scard key //获取集合成员数
sdiff key1 [key2...] //求差集
sdiffstore destination key1 [key2...] //求差集,并存储到destination中
sinter key1 [key2...] //求交集
sintersore destination key1 [key2..] //求交集,并存储到destination中
sunion key1 [key2...] //求并集
sunionstore destination key1 [key2...] //求并集,并存储到destination中(会清空destination中原有元素)
sismember key member //判断集合key中是否包含元素member
smove source destination member //将member元素从source移动到destination集合
spop key //随机移除集合中的一个元素,并返回该元素
srandmember key [count] //随机抽取count个元素, 并返回
srem key member1 [member2...] //移除集合中一个或多个元素
SSCAN key cursor [MATCH pattern] [COUNT count] //???迭代集合中的元素
zset 有序集合,元素不相同
zadd key score1 member1 [score2 member2...] //向有序集合添加一个或多个成员,或者更新已存在成员的分数
//eg: zadd zset 5 redis 4 mongodb 1 mysql 2 oracle 3 postgresql 0 rabitmq
//eg: zadd zset 4 oracle //修改元素oracle的分数
zcard key //获取有序集合的成员数
zcount key min max //计算在有序集合中指定分数区间的成员数
zincrby key increment member //有序集合中对指定成员的分数加上增量 increment
zinterstore destination numberkeys key1 [key2...] //求交集,并将结果存储到destination中
zunionstore destination numberkeys key1 [key2...] //求并集,并将结果存储到destination中
zrange key start stop [withscores] //通过索引区间返回有序集合成指定区间内的成员
ZRANGEBYLEX key min max [LIMIT offset count] //???通过字典区间返回有序集合的成员
zrangebyscore key min max [withscores] [limit] //获取指定分数区间内的成员
zrank key member //获取指定成员的索引
zrevrank key member //获取指定成员的逆序索引
zscore key member //求成员分数值
zrem key member [member...] //移除有序集合中的一个或多个成员
ZLEXCOUNT key min max //???在有序集合中计算指定字典区间内成员数量
ZREMRANGEBYLEX key min max //???移除有序集合中给定的字典区间的所有成员
zremrangebyrank key start stop //移除有序集合中给定的排名区间的所有成员
zremrangebyscore key min max //移除有序集合中给定的分数区间的所有成员
zrevrange key start stop [withscores] //通过索引,获取有序集中指定区间内的成员,逆序
zrevrangebyscore key start stop [withscores] //返回有序集中指定分数区间内的成员,分数从高到低排序
ZSCAN key cursor [MATCH pattern] [COUNT count] //???迭代有序集合中的元素(包括元素成员和元素分值)
===============
config set
config get
String{
set key value
get key
}
Hash{
hmset user:1 name wuyue password 123456 score 95
hgetall user:1
}
List{ //元素可以相同
lpush list redis
lpush list mongodb
lpush list rabitmq
lrange list 0 10
lrange list 0 2
}
Set{ //元素不相同
sadd set redis
sadd set mongodb
sadd set rabitmq
smembers set
}
zset{ //元素不相同
//zadd key score member
zadd zset 5 redis
zadd zset 4 mongodb
zadd zset 1 mysql
zadd zset 2 oracle
zadd zset 3 postgresql
zadd zset 0 rabitmq
zadd zset 4 oracle //修改元素oracle的分数
zrangebyscore zset 0 5 //分数为0到5的元素
}
ping //检测redis服务是否启动
$ redis-server.exe redis.windows.conf //启动服务
$ redis-cli -h host -p port -a password //登录
Key{
del key //key存在时,删除key
dump key //序列化给定key,并返回序列化的值
exists key //
move key db //eg: move name 1 //将当前数据库中
}