Radis:cut-dump.rdb用于开发目的



我有一个包含8GB数据的dump.rdb文件。由于redis将从RAM中读取,因此我希望在本地开发机器上用少量数据启动redis服务器。

是否有可能从dump.rdb中删除大约95%的密钥,以便在生产服务器上拥有一个只有几千个密钥的测试转储文件,而不是8个MiO。

您必须使用完整的RDB启动一个新实例,然后删除键以获取所需内容,然后保存该RDB并在您的开发机器上使用它。没有直接更改RDB文件的本机方法。

没有原生Redis方式,但您可以使用rdb工具来实现,您可以只读遵循模式的密钥,并在Redis协议中发出它们。

类似这样的东西:

rdb.py --command protocol --key "users:*" dump.rdb

将输出:

*3
$3
SET
$13
users:1824594
$32
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
*3
$3
SET
$13
users:1826324
$32
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

这个输出可以通过netcat直接提供给您的Redis资源。