Redis命令合集

Redis命令合集

服务器相关命令

说明 命令
启动redis服务 redis-server.exe redis.windows.conf
默认连接 redis-cli.exe -a 123456
避免中文显示乱码连接 redis-cli.exe -a 123456 --raw
IP、端口、密码连接,地址:localhost、端口:6379、密码:12345如果没加密码可以不输入,默认没密码 redis-cli.exe -h localhost -p 6379 -a 123456
效验连接状态,如果连接成功返回PONG,连接失败返回错误信息 ping
使用auth命令验证密码是否正确,如果当前未登陆进行验证通过后会转为登陆状态,如果当前已登陆,会返回验证结果成功或失败 auth password
查看服务器CPU、客户端、所有信息 info cpu、info clients、info
统计当前库下key的数量 dbsize
redis共有16个db,从db0~db15,使用select index命令在数据库之间进行切换 select index
执行一个异步的AOF文件重写 bgrewriteaof
同步地将redis中的数据持久化到磁盘 save
异步地将redis中的数据持久化到磁盘 bgsave
查看上次持久化到磁盘的时间 lastsave
查看当前Redis中所有可用命令 command
清空当前数据库下的所有数据 flushdb
清空所有库下的所有数据 flushall
监听redis服务器接收到的所有命令 monitor
异步的将数据持久化到磁盘后关闭服务器 shutdown [nosave 或 save]

key相关命令

说明 命令
该命令用于在 key 存在时删除 key DEL key
序列化给定 key ,并返回被序列化的值 DUMP key
检查给定 key 是否存在 EXISTS key
为给定 key 设置过期时间,以秒计 EXPIRE key seconds
EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳(unix timestamp)。 EXPIREAT key timestamp
设置 key 的过期时间以毫秒计 PEXPIRE key milliseconds
设置 key 过期时间的时间戳(unix timestamp) 以毫秒计 PEXPIREAT key milliseconds-timestamp
查找所有符合给定模式(pattern)的 key KEYS pattern(如:keys 张*)(以张开头的key值)
将当前数据库的 key 移动到给定的数据库 db 当中 MOVE key db(默认有16个数据库,可扩展)(如:move name 2)(移动到数据库2)
可跳转到指定数据库 select db(如select 2)
移除 key 的过期时间,key 将持久保持 PERSIST key
以毫秒为单位返回 key 的剩余的过期时间 PTTL key
以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live) TTL key
从当前数据库中随机返回一个 key RANDOMKEY
修改 key 的名称 RENAME key newkey
仅当 newkey 不存在时,将 key 改名为 newkey RENAMENX key newkey
返回 key 所储存的值的类型 TYPE key

String(字符串)相关命令

String是Redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。String类型是二进制安全的,意思是Redis的String可以包含任何数据,比如jpg图片或者序列化的对象。String类型是Redis最基本的数据类型,String类型的值最大能存储512MB。常用命令:

说明 命令
设置指定 key 的值 SET key value
获取指定 key 的值 GET key
返回 key 中字符串值的子字符 GETRANGE key start end
将给定 key 的值设为 value ,并返回 key 的旧值(old value) GETSET key value
对 key 所储存的字符串值,获取指定偏移量上的位(bit) GETBIT key offset
获取所有(一个或多个)给定 key 的值 MGET key1 [key2..]
对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit) SETBIT key offset value
将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位) SETEX key seconds value
只有在 key 不存在时设置 key 的值 SETNX key value
用 value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始 SETRANGE key offset value
返回 key 所储存的字符串值的长度 STRLEN key
同时设置一个或多个 key-value 对 MSET key value [key value ...]
同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在 MSETNX key value [key value ...]
这个命令和 SETEX 命令相似,但它以毫秒为单位设置 key 的生存时间,而不是像 SETEX 命令那样,以秒为单位 PSETEX key milliseconds value
将 key 中储存的数字值增一 INCR key
将 key 所储存的值加上给定的增量值(increment) INCRBY key increment
将 key 所储存的值加上给定的浮点增量值(increment) INCRBYFLOAT key increment
将 key 中储存的数字值减一 DECR key
key 所储存的值减去给定的减量值(decrement) DECRBY key decrement
如果 key 已经存在并且是一个字符串, APPEND 命令将指定的 value 追加到该 key 原来值(value)的末尾 APPEND key value

Hash(哈希)相关命令

Redis hash是一个键值(key、value)对集合。即编程语言中的Map类型。Redis hash是一个String类型的field和value的映射表,hash特别适合用于存储对象。常用命令:

说明 命令
删除一个或多个哈希表字段 HDEL key field1 [field2]
查看哈希表 key 中,指定的字段是否存在 HEXISTS key field
获取存储在哈希表中指定字段的值 HGET key field
获取在哈希表中指定 key 的所有字段和值 HGETALL key
为哈希表 key 中的指定字段的整数值加上增量 increment HINCRBY key field increment
为哈希表 key 中的指定字段的浮点数值加上增量 increment HINCRBYFLOAT key field increment
获取所有哈希表中的字段 HKEYS key
获取哈希表中字段的数量 HLEN key
获取所有给定字段的值 HMGET key field1 [field2]
同时将多个 field-value (域-值)对设置到哈希表 key 中 HMSET key field1 value1 [field2 value2 ]
将哈希表 key 中的字段 field 的值设为 value HSET key field value
只有在字段 field 不存在时,设置哈希表字段的值 HSETNX key field value
获取哈希表中所有值 HVALS key
迭代哈希表中的键值对 HSCAN key cursor [MATCH pattern] [COUNT count]

List(列表、双向链表)相关命令

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。常用命令:

说明 命令
移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止 BLPOP key1 [key2 ] timeout
移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止 BRPOP key1 [key2 ] timeout
从列表中弹出一个值,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止 BRPOPLPUSH source destination timeout
通过索引获取列表中的元素 LINDEX key index
在列表的元素前或者后插入元素 LINSERT key BEFORE
获取列表长度 LLEN key
移出并获取列表的第一个元素 LPOP key
将一个或多个值插入到列表头部 LPUSH key value1 [value2]
将一个值插入到已存在的列表头部 LPUSHX key value
获取列表指定范围内的元素 LRANGE key start stop
移除列表元素 LREM key count value
通过索引设置列表元素的值 LSET key index value
对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除 LTRIM key start stop
移除列表的最后一个元素,返回值为移除的元素 RPOP key
移除列表的最后一个元素,并将该元素添加到另一个列表并返回 RPOPLPUSH source destination
在列表中添加一个或多个值 RPUSH key value1 [value2]
为已存在的列表添加值 RPUSHX key value

Set(集合)相关命令

Redis的Set是String类型的无序集合。集合是通过哈希表实现的,所以添加、删除、查找的复杂度都是O(1)。常用命令:

说明 命令
向集合添加一个或多个成员 SADD key member1 [member2]
获取集合的成员数 SCARD key
返回给定所有集合的差集 SDIFF key1 [key2]
返回给定所有集合的差集并存储在 destination 中 SDIFFSTORE destination key1 [key2]
返回给定所有集合的交集 SINTER key1 [key2]
返回给定所有集合的交集并存储在 destination 中 SINTERSTORE destination key1 [key2]
判断 member 元素是否是集合 key 的成员 SISMEMBER key member
返回集合中的所有成员 SMEMBERS key
将 member 元素从 source 集合移动到 destination 集合 SMOVE source destination member
移除并返回集合中的一个随机元素 SPOP key
返回集合中一个或多个随机数 SRANDMEMBER key [count]
移除集合中一个或多个成员 SREM key member1 [member2]
返回所有给定集合的并集 SUNION key1 [key2]
所有给定集合的并集存储在 destination 集合中 SUNIONSTORE destination key1 [key2]
迭代集合中的元素 SSCAN key cursor [MATCH pattern] [COUNT count]

Zset(sorted set:有序集合)相关命令

Redis zset和set一样也是String类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。Redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数score却可以重复。常用命令:

说明 命令
向有序集合添加一个或多个成员,或者更新已存在成员的分数 ZADD key score1 member1 [score2 member2]
获取有序集合的成员数 ZCARD key
计算在有序集合中指定区间分数的成员数 ZCOUNT key min max
有序集合中对指定成员的分数加上增量 increment ZINCRBY key increment member
计算给定的一个或多个有序集的交集并将结果集存储在新的有序集合 key 中 ZINTERSTORE destination numkeys key [key ...]
在有序集合中计算指定字典区间内成员数量 ZLEXCOUNT key min max
通过索引区间返回有序集合指定区间内的成员 ZRANGE key start stop [WITHSCORES]
通过字典区间返回有序集合的成员 ZRANGEBYLEX key min max [LIMIT offset count]
通过分数返回有序集合指定区间内的成员 ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]
返回有序集合中指定成员的索引 ZRANK key member
移除有序集合中的一个或多个成员 ZREM key member [member ...]
移除有序集合中给定的字典区间的所有成员 ZREMRANGEBYLEX key min max
移除有序集合中给定的排名区间的所有成员 ZREMRANGEBYRANK key start stop
移除有序集合中给定的分数区间的所有成员 ZREMRANGEBYSCORE key min max
返回有序集中指定区间内的成员,通过索引,分数从高到低 ZREVRANGE key start stop [WITHSCORES]
返回有序集中指定分数区间内的成员,分数从高到低排序 ZREVRANGEBYSCORE key max min [WITHSCORES]
返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序 ZREVRANK key member
返回有序集中,成员的分数值 ZSCORE key member
计算给定的一个或多个有序集的并集,并存储在新的 key 中 ZUNIONSTORE destination numkeys key [key ...]
迭代有序集合中的元素(包括元素成员和元素分值) ZSCAN key cursor [MATCH pattern] [COUNT count]
posted @ 2023-11-23 11:20  肖德子裕  阅读(19)  评论(0编辑  收藏  举报