命令行里怎么快速看Redis状态和所有实例运行情况,实用技巧分享
- 问答
- 2026-01-14 12:24:54
- 1
关于在命令行里快速查看Redis状态和所有实例运行情况,有一些非常实用的技巧,这些技巧主要来源于Redis官方文档的说明、以及许多运维工程师和开发者在实际工作中总结出来的经验,下面就直接分享这些方法,避免复杂的理论,直接说怎么用。
最核心的命令:INFO
这个命令是查看Redis状态最强大、最全面的工具,直接在命令行输入 INFO,它会输出一大堆信息,但通常我们不会看全部,而是看其中关键的部分。
-
查看核心状态:INFO server 和 INFO stats
- 输入
INFO server,你可以快速看到Redis的版本号、运行天数、进程ID、运行端口等基础信息,特别是uptime_in_days这个字段,能让你一眼就知道这个Redis实例已经稳定运行了多少天,这对于判断服务稳定性很有帮助。 - 输入
INFO stats,这里包含了大量的运行时统计信息。total_connections_received是历史总连接数,instantaneous_ops_per_sec是当前每秒操作数,这个值能直观反映当前Redis的繁忙程度,还有keyspace_hits和keyspace_misses,用它们可以计算出缓存的命中率,这是判断缓存是否有效的重要指标。
- 输入
-
查看内存和持久化:INFO memory 和 INFO persistence
- 内存是Redis的重点,输入
INFO memory,重点关注used_memory,这是Redis实际使用的内存总量,如果它快接近服务器的物理内存了,那就非常危险了。used_memory_peak是历史内存使用峰值,可以帮助你了解最高负载时的内存情况。 - 输入
INFO persistence,这里能看到Redis的数据持久化情况,查看rdb_last_save_time可以知道最后一次成功备份到磁盘的时间戳,结合当前时间,就能判断备份是否正常。aof_last_bgrewrite_status如果是ok,说明最近的AOF重写成功了。
- 内存是Redis的重点,输入
-
查看主从复制:INFO replication 如果你的Redis配置了主从复制,这个命令就至关重要,在主节点上执行,可以看到它下面连接了多少个从节点(
connected_slaves),在从节点上执行,可以看到它是否已经成功连接上主节点(role:slave和master_link_status:up),以及复制延迟有多大(master_last_io_seconds_ago,这个值很小的话说明同步很及时)。
快速检查的“快捷命令”
除了INFO的模块化查询,还有一些更直接的命令用于快速检查。

-
PING命令 这是最简单的健康检查,直接输入
PING,如果Redis服务正常,它会回复PONG,很多监控脚本就用这个命令来确认Redis进程是否还“活着”。 -
查看键的数量:DBSIZE 输入
DBSIZE,它会立刻返回当前数据库中key的总数,让你对数据量有个快速的概念。 -
实时监控:MONITOR 这是一个需要谨慎使用的命令,输入
MONITOR后,Redis会进入一种监控模式,实时打印出所有客户端发来的每一个命令,这在调试问题、查看当前到底在执行什么操作时非常有用。警告:在生产环境不要长时间使用,因为它会严重拖慢Redis的性能。
如何查看服务器上所有Redis实例的运行情况
很多时候,一台服务器上可能运行着多个Redis实例(每个实例监听不同的端口),这时候,逐个连接进去看就太麻烦了。

-
使用ps命令结合grep 最直接的方法是在Linux命令行下(不是在Redis命令行里)执行:
ps aux | grep redis-server
这个命令会列出所有名字中包含“redis-server”的进程,你会看到每个Redis进程的启动命令,里面就包含了配置文件路径和端口号,这样你就知道这台机器上跑了哪些实例。
-
利用配置文件中的端口信息 每个Redis实例都有一个配置文件(.conf文件),你可以写一个简单的Shell脚本来批量检查,脚本的思路是:
- 找到所有的Redis配置文件。
- 从每个配置文件中读出它监听的端口号。
- 然后用
redis-cli -p 端口号 info这样的命令去逐个查询关键信息。 一个非常简单的循环可以是这样(假设配置文件都在 /etc/redis/ 下):for config_file in /etc/redis/*.conf; do port=$(grep ^port "$config_file" | awk '{print $2}') echo "检查实例端口: $port" redis-cli -p "$port" info stats | grep instantaneous_ops_per_sec done这个例子会输出每个Redis实例当前的每秒操作数。
-
使用专业的监控工具 对于实例非常多、要求又很高的生产环境,上面手动的方法就不够了,这时候可以考虑使用像
redis-cli --cluster check命令(针对Redis集群),或者更通用的系统监控工具,比如Prometheus配合Redis Exporter,这些工具可以自动发现所有实例,并提供一个统一的仪表盘来查看所有实例的状态、性能指标和告警,但这部分就涉及到一些工具搭建了,属于更进阶的内容。
总结一下关键点:
日常快速检查,就用 INFO 命令加子模块(如 info memory, info replication),想知道机器上有哪些实例,用 ps aux | grep redis-server,要批量检查多个实例,写个简单的Shell脚本循环调用 redis-cli 是最实用的。MONITOR 命令虽好,但不要在生产环境乱用。
本文由革姣丽于2026-01-14发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:https://haoid.cn/wenda/80548.html
