# Redis 常用命令使用指南 本手册涵盖了 Redis 日常运维、开发及 Sentinel 高可用管理中常用的核心命令。 ## 一、 基础连接与管理 ### 1.1 连接命令 ```bash # 标准连接 redis-cli -h -p -a # 连接哨兵节点示例 redis-cli -h ${REDIS_MASTER_IP} -p 26379 -a afe123456 ``` ### 1.2 系统管理 | 命令 | 说明 | | :--- | :--- | | `PING` | 检查连接是否存活,返回 PONG 表示正常 | | `AUTH ` | 身份验证 | | `SELECT ` | 切换数据库(默认 0-15) | | `INFO` | 查看服务器详细信息(CPU、内存、持久化、主从等) | | `CONFIG GET ` | 获取配置参数 | | `CONFIG SET ` | 动态修改配置参数(不持久化到文件,需执行 REWRITE) | | `CONFIG REWRITE` | 将动态修改的配置重写到配置文件中 | | `DBSIZE` | 返回当前数据库中的 key 数量 | | `FLUSHDB` | 清空当前数据库中所有 key(谨慎使用) | | `FLUSHALL` | 清空所有数据库中所有 key(谨慎使用) | --- ## 二、 键值对操作 (Key) | 命令 | 说明 | | :--- | :--- | | `KEYS ` | 查找符合模式的 key(生产环境严禁使用 `KEYS *`,建议用 `SCAN`) | | `EXISTS ` | 判断 key 是否存在 | | `DEL ` | 删除 key | | `TYPE ` | 查看 key 存储的数据类型 | | `EXPIRE ` | 设置 key 的过期时间(秒) | | `TTL ` | 查看 key 的剩余存活时间(-1 永久,-2 已过期) | | `RENAME ` | 修改 key 名称 | --- ## 三、 常用数据结构操作 ### 3.1 字符串 (String) - `SET `: 设置键值。 - `GET `: 获取值。 - `INCR `: 自增 1。 - `SETEX `: 设置键值及过期时间。 ### 3.2 列表 (List) - `LPUSH `: 从左侧插入。 - `RPUSH `: 从右侧插入。 - `LPOP `: 从左侧弹出。 - `LRANGE `: 获取范围内的元素。 ### 3.3 哈希 (Hash) - `HSET `: 设置哈希字段。 - `HGET `: 获取哈希字段。 - `HGETALL `: 获取所有字段和值。 ### 3.4 集合 (Set) - `SADD `: 添加元素。 - `SMEMBERS `: 获取所有成员。 - `SISMEMBER `: 判断是否为成员。 --- ## 四、 Sentinel (哨兵) 核心管理命令 通过 `redis-cli` 连接哨兵端口(默认 26379)后执行: | 命令 | 说明 | | :--- | :--- | | `SENTINEL masters` | **查看哨兵监控的所有主节点状态** | | `SENTINEL master ` | 查看指定主节点的详细信息 | | `SENTINEL slaves ` | **查询指定主节点(如 mymaster)下的所有从节点** | | `SENTINEL sentinels ` | **列出除当前连接外的其他 Sentinel 实例** | | `SENTINEL get-master-addr-by-name ` | 获取当前有效的主节点 IP 和端口 | | `SENTINEL ckquorum ` | 检查当前哨兵数量是否满足法定人数 | | `SENTINEL failover ` | **手动强制触发故障转移** | | `SENTINEL reset ` | **重置配置,清除过期或不在线的从节点/哨兵信息** | --- ## 五、 持久化与同步运维 | 命令 | 说明 | | :--- | :--- | | `SAVE` | 同步保存数据到磁盘(会阻塞 Redis) | | `BGSAVE` | 异步保存数据到磁盘 | | `BGREWRITEAOF` | 异步重写 AOF 文件 | | `LASTSAVE` | 查看最后一次成功保存到磁盘的时间戳 | | `ROLE` | 查看当前实例的角色(master/slave/sentinel) | --- ## 六、 官方文档参考 - [Redis Commands (Official)](https://redis.io/commands) - [Redis Sentinel Documentation](https://redis.io/docs/management/sentinel/) - [Redis Administration](https://redis.io/docs/management/admin/)