Redis Bgrewriteaof 命令
一、背景
1. AOF:
Redis的AOF机制有点类似于Mysql binlog,是Redis的提供的一种持久化方式(另一种是RDB),它会将所有的写命令按照一定频率(no, always, every seconds)写入到日志文件中,当Redis停机重启后恢复数据库。
2. AOF重写:
(1) 随着AOF文件越来越大,里面会有大部分是重复命令或者可以合并的命令(100次incr = set key 100)
(2) 重写的好处:减少AOF日志尺寸,减少内存占用,加快数据库恢复时间。
示例:
redis Bgrewriteaof 命令基本语法如下:
# redis-cli -p 6379 -h 127.0.0.1 127.0.0.1:6379> BGREWRITEAOF redis 127.0.0.1:6379> Background append only file rewriting started
查看 aof文件已经变小。
注:对redis内的数据没有影响。亲测18G的aof文件边4G。