接手一台没人交接的服务器,想查下 Redis 是什么版本,好确定能用哪些命令。方法不少,按顺手程度排一下。

最快的两条命令

在服务器上直接敲:

redis-server --version
redis-cli --version

输出里 v= 后面那串就是版本号,比如 7.2.4。两条要各敲一遍,升级不彻底的服务器上,server 和 cli 的版本可能对不上,遇到奇怪报错先核对这两个。

已经连进 redis-cli 的情况

客户端里敲 INFO server,会回一大段信息,找 redis_version 字段就是版本:

redis_version:7.2.4

只想一行出结果,在系统命令行用管道:redis-cli info server | grep redis_version,连远程库、手头没有服务器权限时这条最实用。INFO 后面还能跟 memory、stats 等小节名,按需查看,全量 INFO 太长就别硬刷屏。另外客户端连上后执行某些新命令报 unknown command,多半是版本太老,也算个侧面判断依据。

容器和其他场景

  • Docker 部署的:docker exec 容器名 redis-server --version,进去就能看
  • 源码编译安装的:到源码目录 src 下执行 redis-server --version,效果一样
  • 云厂商托管版:控制台实例详情页一般直接标着内核版本,兼容到哪一版看官方说明

版本号怎么读

三段式:主版本.次版本.补丁号,比如 6.2.14、7.2.4。老规则里偶数次版本代表稳定分支,7.0 之后的发布策略有调整,别光背规则,升级前看官方变更说明,重点确认废弃命令列表,跨大版本升级先在测试环境跑一遍,小版本一般向下兼容。

实际建议:写脚本判断版本就用 redis-cli --version 取输出,人工查看redis版本用 INFO server 最全。查完顺手把主从两边的版本都核一遍,生产环境升级前先备份 RDB 或 AOF 文件,版本不一致迟早出同步问题。