我需要更新redis服务器。
我找到了一种在磁盘上保存数据库并恢复后的方法,但我的问题是新的redis服务器是否会出现读取旧数据库结构的问题?
答案 0 :(得分:5)
转储文件的版本以前9个字符编码。因此可以使用以下命令进行检查:
$ head -1 dump.rdb | cut -c1-9
REDIS0002
Redis 1-2-6使用了转储文件的版本1(它只能读写版本1)
Redis 2-4-6正在使用版本2.但是,它能够读取版本1和版本2文件。无论如何,版本2恰好与版本1向后兼容。
要升级,您只需使用最新的Redis版本读取版本1转储文件,然后再次转储该文件(它将以版本2格式编写)。由于最近的Redis版本和版本2格式提供了一些优化,新文件可能会更小。
或者,您可以使用redis-check-dump命令在启动2-4 Redis实例之前检查转储文件的完整性:
$ ../redis-2.4.4/src/redis-check-dump dump.rdb
==== Processed 19033 valid opcodes (in 639641 bytes) ===========================
这是一个纯粹的只读实用程序,它不会损坏转储文件。