Redis命令整理

Redis

目录

EXPIRE、timeout、TTL(time to live)区别
EXPIRE 过期时间
timeout 超时时间
TTL 生存时间
其实都指的是过期时间。

命令
Redis提供了大量的命令操作。目前总共约197个命令。

APPEND
追加操作。如果key存在并且是个字符串,该命令操作在后面进行追加;如果key不存在,则会先创建这个key并将值设置为空字符串。这种情况下类似SET命令操作。

APPEND key value

APPEND timeseries "fixed-size sample"


AUTH
请求受密码保护的Redis服务器的认证。在允许客户端执行命令操作之前,Redis要求进行密码认证。这是通过配置文件中的requirepass指令来实现的。
AUTH password


BGREWRITEAOF
通知Redis启动一个AOF(Append Only File, 只追加文件)重写过程。该重写过程将基于当前AOF(Append Only File, 只追加文件)创建一个小的优化版本。如果BGREWRITEAOF命令操作失败,不会出现数据丢失,老的AOF(Append Only File, 只追加文件)将保持原样。如果没有后台进程做持久化,重写过程只由Redis触发。

BGREWRITEAOF

COMMAND

COMMAND
返回Redis支持的所有命令的详细信息。

EXISTS

EXISTS key [key ...]
返回该key是否存在。


EXPIRE

EXPIRE key seconds
设置key的过期时间,以秒为单位。过期后,该key及对应的值将自动被删除。
过期时间只会被删除或者更新操作清除,如 DEL, SET, GETSET 以及所有 *STORE命令操作。
当通过PERSIST命令将一个key转为持久key时,过期时间也会被清除。
如果使用RENAME命令重命名一个key时,该key关联的TTL生存时间将被传给新的key。
如果使用RENAME命令覆盖更新一个key,如:
存在一个key: key_a,使用RENAME key_b key_a覆盖更新key_a后,不管key_a有没有关联的过期时间,新的key_a将继承key_b的特性。

EXPIREAT

EXPIREAT key timestamp

类似EXPIRE命令。通过指定一个unix时间戳来设置过期时间,以秒为单位,表示从1970年1月日到现在的秒数。

FLUSHALL

FLUSHALL
从所有DB中删除所有的key,不只是当前选择的DB。执行该命令不会失败。


FLUSHDB

FLUSHDB
从当前选择的DB中删除所有的key。执行该命令不会失败。

GET

GET key

读取操作,只用于读取字符串。如果key不存在,返回null。如果读取key对应的值不是字符串,返回错误。

GETSET
GETSET key value

原子操作,将key对应的值设置为新值,通过返回更新前的旧的值。如果key存在,但设置的值不是个字符串,则返回错误。

HGET

HGET key field
返回哈希key中关联field的值。如果哈希key不存在或者哈希key中不存在field,返回null。

HSET
HKEYS key
返回指定哈希(key)中所有的field字段(key)
HLEN
HLEN key
返回指定哈希(key)中field的个数。

HMGET
HMGET key field [field ...]
返回指定哈希(key)中关联field的值,如果其中某个field字段不存在,对应的返回值为null。
一个不存在的哈希(key)被处理为空哈希,所以如果哈希(key)不存在, HMGET 返回一个null列表。

HMSET
HMSET key field value [field value ...]
向哈希(key)中set一组field及对应的值。如果某个field已存在,则覆盖对应的值。如果哈希(key)不存在,将创建一个哈希(key)。


HSET
HSET key field value
哈希key set操作,该key对应一个哈希结构。在该哈希key中插入一个key为field,value为指定值的key/value。如果该哈希key不存在,则创建一个哈希key,如果field已经存在,则覆盖原来的值。

HSETNX

HSETNX key field value
尽当哈希(key)中不存在指定field时,向哈希(key)中set该field及关联值。如果哈希(key)不存在,将创建一个哈希(key)。如果该field已存在,则HSETNX 命令不产生影响。

HSTRLEN
HSTRLEN key field
返回哈希(key)中指定字段对应值的字符串长度。如果哈希(key)或field不存在,返回0.
HVALS
HVALS key
返回哈希(key)中所有关联的值。如果哈希(key)不存在,则返回空列表。

INCR
INCR key
将key对应的值加1.

INCRBY
INCRBY key increment
将key对应的值加上指定数值。如果key不存在,则在执行此操作之前,将该key设置为0.如果该key对应值为非法类型或是个字符串(不能表示一个整型数),则返回错误。该操作只能限制在64位有符号整型数上使用。

INCRBYFLOAT
INCRBYFLOAT key increment
同INCRBY类似,针对浮点数。


SET

SET key value [EX seconds] [PX milliseconds] [NX|XX]

设置key并关联一个字符串。如果该key已经关联一个值,则进行覆盖更新而不管其类型。SET操作执行成功后,之前该key关联的TTL生存时间不再有效。

参数选项
从Redis 2.6.12开始支持一些参数设置
EX seconds 设置过期时间,以秒为单位
PX milliseconds 设置过期时间,以毫秒为单位
NX 只用于当key不存在时,设置key并关联到某个值。
XX 只用于到key存在时,设置key并关联到某个值。

SETEX

SETEX key seconds value
设置key并关联到某个值,同时指定一个过期时间,以秒为单位。该操作等同于:

SET mykey value
EXPIRE mykey seconds

SETNX

SETNX key value

尽用于如果key不存在,设置key并关联到某个值。如果该key已经关联一个值,则不执行任何操作。

TTL

TTL key

返回剩余的生存时间(TTL, time to live)



http://redis.io/commands
http://redis.io/topics/rdd
http://redis.io/topics/protocol
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值