redis问题排查记录

集群下redis的某个key被哪个客户端修改了

  1. 通过redis客户端工具连接到redis服务器
>redis-cli.exe -h xxxip -p xxxport
>auth xxxpassword
  1. 查看redis集群节点,可以看到每个节点负责哪些槽:
>cluster nodes
或者
>cluster slots
  1. 查看指定的key在哪个槽上:
>cluster keyslot xxxkey
  1. 通过以上几步,就可以明确指定的key在哪个节点上;
  2. 使用monitor命令监听指定的节点,实时打印该节点服务器执行的命令:
>redis-cli.exe -h xxxip -p xxxport
>auth xxxpassword
>monitor
  1. monitor打印的日志格式是:时间戳 [数据库索引号 客户端ip:客户端端口] "执行的命令"
  2. 通过分析monitor日志即可知道是哪个客户端端口执行了哪些命令;
  3. 登录指定IP的客户端服务器,查看是哪个进程使用了特定端口:
netstat -anp | grep xxxport
  1. 通过进程id查看进程的详细信息:
ps -ef | grep xxxid