我最近将Redis配置为使用AOF以及RDB快照。
但是,看起来AOF在服务器启动时没有正确重播。
我停止了服务。然后,我使用/var/redis/appendonly.aof
确保redis-check-aof
有效。
然后我又启动了服务器。此时,RDB文件为空。这是我需要研究的另一个问题 - Redis不时开始丢失所有数据。
在日志文件中,我可以看到AOF应该正确加载:
DB loaded from append only file: 1.474 seconds
但是,当我尝试读取我知道应该存在的值时,我什么也得不到:
127.0.0.1:6379> get iQube:Live:wordCount:2015:11:13:10:6
(nil)
在AOF中,有这样的命令:
INCRBY
$36
iQube:Live:wordCount:2015:11:13:10:6
$1
2
*2
$4
我还需要做些什么才能让这项工作成功吗?
答案 0 :(得分:0)
我的错。我没有正确保护服务器并成为most typical attack to Redis的目标。实际上,AOF文件包含flushall
命令,这些命令在加载时擦除数据库干净。
至少,我建议将这三行放到redis.conf
:
rename-command CONFIG someverylongandveryunguessablestring
rename-command FLUSHDB ""
rename-command FLUSHALL ""