启动redis
redis-cli
key 是全局唯一的
redis
string
set
SETNX key 不存在
SETEX 秒
PSETEX 毫秒
get
GETSET 返旧值,设置新值
STRLEN 获取字符串长度 0
EXISTS 判断是否存在
APPEND 往后面追加字符串
SETRANGE 从偏移量开始覆盖值
GETRANGE 获取字符串指定部分, -1 表示最后一个字符
INCR 数字增加 1,非数字报错
DECR
INCRBY 数字增加指定值
DECRBY
INCRBYFLOAT 数字增加指定浮点值
多个值
MSET 覆盖值
MGET
MSETNX 如果 key 存在则全都不成功
HDEL 删除一个或者多个值
HGETALL 获取多个值
HLEN field 个数
HSTRLEN 某个 field 长度
hash
对象
HSET key 多个『域 值』
HGET
HSETNX field 不存在设置
HEXISTS 判断是否存在
HINCRBY 加上某个数字 负数是减去某个数字
HINCRBYFLOAT 增加一个浮点型
HMSET 赋值多个值
HMSET 获取多个值
HKEYS 获取 key 的所有域
HVALS 获取 key 的所有值
HGETALL 获取 key 的所有 域和值
list
字符串列表,允许重复元素
LPUSH 加入元素,在前面
LLEN 列表长度
LRANGE 截取一部分元素
LPUSHX 当 key 存在非空时操作
RPUSH 加入元,在后面
RPUSHX 非空时插入在后面
LPOP 移除并返回头元素
RPOP 移除并返回尾部元素
RPOPLPUSH a b移动数据
a a 旋转数据
LREM 删除某个值
0 所有
>0 从头
<0 从结尾
LLEN 长度
LINDEX 下标位置元素 0 表示第一个
LINSERT 插入在第一个查找到的元素之前或者之后
LSET 对指定下标的值进行重新赋值
LTRIM 截取指定部分,过大会被清空
BLPOP 阻塞值 0 无限延长 接收到新值停止阻塞 避免轮询
BRPOP 阻塞超时弹出
BRPOPLPUSH 弹出等待时长
set
集合成员是唯一的
SADD 添加一个或者多个元素
SMEMBERS 返回集合所有内容
SMEMBERS 元素是否在集合中
SPOP 移除随即元素
SRANDMEMBER 返随机元素, 负数返回可能会重复
SREM 移除一个或者多个元素
SMOVE 从一个集合移动到另外一个集合,如果另一个集合存在则删除
SCARD 返回集合元素数量
SINTER 返回两个集合的交集
SINTERSTORE 保存集合到第一参数,如果第一个参数集合存在则覆盖
SUNION 返回所给集合的并集
SUNIONSTORE 把并集存入第一个参数
SDIFF 返回集合的差集
SDIFFSTORE 保存差集
有序集合
( 开区间 [ 闭区间
ZADD score member 添加元素
ZRANGE 返回指定元素
ZSCORE 返回 score
ZINCRBY 增加 member的 score 值
ZCARD 返回数量
ZCOUNT 计算 score 区间的数量
ZRANGE 返回指定区间的成员 score 从小到大返回
ZREVRANGE score 从大到小返回
ZRANGEBYSCORE 返回指定成员 ( < , - + inf
ZREVRANGEBYSCORE 逆序返回指定成员 + - inf
ZRANGE 返回 member 排序
ZRANK 返回某个 member 排序值 0 开始(小到大)
ZREVRANK 返回某个 member 排序 (大到小)
ZRANGE 移除某个 member
ZREMRANGEBYRANK 按排名移除,返回移除数量
ZREMRANGEBYSCORE 移除 score 间的成员
ZRANGEBYLEX 返回指定范围成员 字典
ZLEXCOUNT 返回指定范围数量
ZREMRANGEBYLEX 移除字典范围值
ZUNIONSTORE 乘以某个值
ZINTERSTORE 存储交集
HyperLogLog
PFADD 增加指定元素
PFCOUNT 返回元素个数
PFMERGE 合并多个 pf
地理位置
GEOADD 添加一个或者多个经纬度
GEOPOS 返回指定值的经纬度
GEODIST 返回两个位置间的距离
GEORADIUS 返回指定距离的元素
GEORADIUSBYMEMBER 返回范围内的元素 --
GEOHASH 返回指定元素 hash
位图
SETBIT 设置一个值
GETBIT 获取指定偏移量的值
BITCOUNT 个数统计
BITPOS 检测
BITOP 多个计算 AND OR XOR
数据库
EXISTS 判断 key 是否存在
TYPE 返回 key 类型
RENAME 重命名 key
RENAMENX 重命名的 key 不存在才成功
SELECT 选择数据库 0 默认
SWAPDB 切换两个数据库的数据
MOVE 移动 key 到 某个数据库
DEL 删除一个或者多个 key
RANDOMKEY 从数据库随即返回一个 key
FLUSHDB 删除数据库中所有 key
FLUSHALL 删除所有数据库中的 key
DBSIZE 返回数据库中 key 数量
KEYS 匹配 * ? []多选一
SCAN 迭代游标 ---
SORT 排序
LIMIT 0 5 限制返回数量
DESC 排序方式
GET user_level_* 获取其他值
key(hash 键)->field (hash 域)
STORE 保存排序结果
自动过期
EXPIRE 设置过期时间
EXPIRE 接收一个时间戳
PEXPIRE 毫秒为单位
PEXPIREAT 毫秒时间戳
TTL 剩余过期时间 秒
PTTL 毫秒
PERSIST 移除过期时间变为永久
事务
MULTI 开始
DISCARD 放弃命令
EXEC 执行
WATCH 监听 key,如果 key 改变将打断事务
UNWATCH 取消监听
持久化
SAVE 保存到硬盘
BGSAVE 异步保存,开启一个子进程
LASTSAVE 最近一次保存到磁盘上的时间