环境配置信息:
Redhat7/Redis 4.0.10
需求描述:
从库aof文件把目录空间占满了,运行日志不断重复报错内容有“no space left on device”,而且在从库用info replication命令检查发现master_link_status:down
问题分析:
检查主库aof文件只有2.6G而从库aof文件有15G,再检查从库配置文件中auto-aof-rewrite-percentage参数值为0但是主库该值为100。于是推断从库故障的问题原因是一直未重写导致aof文件中存在大量重复内容,以致把空间胀满后不可再写aof文件,所以发生故障。
解决方案:
1、修改从库auto-aof-rewrite-percentage参数值为100;
#su - redis
$vi /paic/rd6532/conf/redis.conf
auto-aof-rewrite-percentage 100
2、删除或移除从库的aof文件;
#rm -rf /paic/rd6532/datafile/apendonly.aof
3、重启Redis服务;
#su - redis
$. profile 6432
$redis-cli -p 6523 -a XXXXXX
127.0.0.1:6523>shutdown
127.0.0.1:6523>exit
$/paic/redis/4.0.10/bin/redis-server /paic/rd6532/conf/redis.conf
4、检查主从状态。
#su - redis
$. profile 6432
$redis-cli -p 6523 -a XXXXXX
127.0.0.1:6523>info replication