Redis命令精讲与操作指南,告别模糊操作,掌握核心指令,提升数据管理效率,避免误删风险,实现高效运维。

文章导读
掌握Redis核心命令如SET、GET、DEL、EXPIRE等,能避免盲目操作导致数据丢失,通过KEYS *谨慎查询、FLUSHALL前备份数据,实现高效运维和零误删风险。
📋 目录
  1. 基础键值操作
  2. 列表操作命令
  3. 哈希操作详解
  4. 集合与有序集合
  5. 避免误删的关键命令
  6. FAQ
A A

掌握Redis核心命令如SET、GET、DEL、EXPIRE等,能避免盲目操作导致数据丢失,通过KEYS *谨慎查询、FLUSHALL前备份数据,实现高效运维和零误删风险。

基础键值操作

SET key value:设置键值对的基本命令,用于存储字符串数据。例如,SET user:1 "张三" 将键user:1的值设置为张三。

GET key:获取指定键的值。如果键不存在,返回nil。使用GET user:1 可以快速读取用户数据。

MSET key1 value1 key2 value2:同时设置多个键值对,提高批量操作效率,避免多次网络往返。

列表操作命令

LPUSH key value1 value2:从列表左侧插入一个或多个值,创建或追加到列表头部。

RPOP key:移除并返回列表尾部的元素,常用于队列实现FIFO。

LRANGE key start stop:获取列表指定区间内的元素,start和stop为索引,从0开始,支持负数表示从尾部计算。

哈希操作详解

HSET key field value:为哈希表key中的域field设置值,如果域不存在则创建。

HGET key field:获取哈希表中指定域的值,返回nil如果域不存在。

HDEL key field1 field2:删除哈希表中的一个或多个域,返回被删除域的数量。

集合与有序集合

SADD key member1 member2:向集合key添加一个或多个成员,不允许重复。

Redis命令精讲与操作指南,告别模糊操作,掌握核心指令,提升数据管理效率,避免误删风险,实现高效运维。

ZADD key score1 member1 score2 member2:为有序集合添加成员及其分数,用于排行榜场景。

SCARD key:返回集合key的成员个数,便于统计。

避免误删的关键命令

使用EXISTS key检查键是否存在再执行DEL,避免误删不存在的键。

SCAN 0 MATCH * COUNT 100:增量迭代键空间,替代危险的KEYS *命令,防止阻塞Redis。

CONFIG SET save ""临时禁用RDB持久化,FLUSHALL前确保数据安全备份。

FAQ

Q: 如何避免FLUSHALL误删所有数据?
A: 先执行BGSAVE创建RDB备份,或用SCAN迭代删除指定模式键。

Q: KEYS *命令为什么危险?
A: 在大数据量时会阻塞主进程,用SCAN代替进行游标迭代。

Q: Redis如何设置键过期时间?
A: 用EXPIRE key seconds或SETEX key seconds value,一键设置值和过期时间。

Q: 批量删除键的 safest方式?
A: 结合SCAN和EVAL脚本:EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 pattern*。