首页 > 解决方案 > 在某些键上使用 TTL 调试 redis db

问题描述

我有一个来自 Redis 的 .rdb 文件,其中包含带有 TTL 的键。rdb 文件很旧,我想检查内容以调试我的应用程序。但是,在 Redis 中加载 .rdb 文件时,由于过期,键会自动删除。

有没有办法告诉redis忽略过期?所以我可以在不删除那些的情况下查看进行调试的键...

也许可以通过更改我的计算机时间和日期来实现,但我真的很想避免这种情况。

任何帮助,将不胜感激 !

标签: redis

解决方案


我找到了这个工具:https ://github.com/sripathikrishnan/redis-rdb-tools

它允许读取 .rdb 文件,以 Redis 协议的形式发出内容。该-x选项不对键设置 TTL。使用redis-cli --pipe,可以使用 .rdb 文件中的所有内容填充一个新的 redis 实例:

rdb -c protocol rdb_file_to_debug.rdb -x | redis-cli --pipe

推荐阅读