赞
踩
今天一上午,启动项目,over,redis起不来,赶紧去查看redis到底什么鬼,一看redis连接明明是好的,系统就是起不来,重启redis,立马就会,过一会又报错。决心好好看看是一个什么鬼。
MISCONF Redis is configured to save RDB snapshots, but it is currently not able to...
1)检查redis是否启动
systemctl status redis
启动redis
systemctl start redis
重启redis
systemctl restart redis.service
2)redis启动没问题,进入里面去ping
redis-cli
结果返回了erro错误信息Redis is configured to save RDB snapshots, but is currently not able to persist on disk. but is currently not able to persist on disk.
Redis is configured to save RDB snapshots, but is currently not able to persist on disk. but is currently not able to persist on disk.
一看信息,说的是如果你配置(redis.conf)里面stop-writes-on-bgsave-error 选项如果 = yes, redis 会创建一个新的后台进程dump rdb。
假设 :创建快照(硬盘上,产生一个新的rdb文件)需要 20s时间,redis主进程,在这20s内,会继续接受客户端命令,但是,就在这20s,内,创建快照!!!,出错了,比如磁盘满了,那么redis会认为,你当下,持久化数据出现了问题,你就不要再set啦。
参考一个人的博客信息:https://blog.csdn.net/weixin_39472415/article/details/99703185
3)决定更改stop-writes-on-bgsave-error
更改redis.config配置文件,但是呢,治标不治本,我决心好好继续往下看
(1)查看redis.confg的位置
(2)首先查看redis启动状态
systemctl status redis
(3)然后cat /usr/lib/systemd/system/redis.service
后面我发现,读写速度响应比较慢,考虑到可能是磁盘空间占用过高,因此去查看磁盘文件
1)查看df -h
当时就觉得问题应该是这里了就去一步步排查哪里文件放的大
2)来到根目录cd /
3)查看所有的目录占比 du -h -x --max-depth=1
du -h -x --max-depth=1
4)然后依次进入下面目录,每进入一级就用du -h -x --max-depth=1
查看
最后定位到mysql日志这一级
5)删除mysqlId日志,大功告成
echo "" >mysqld.log
du -h mysqld.log
还是对redis不够了解,内存空间不足真是个大坑,搞了好久好久,期间还有一些其它的问题。不过都还好,各位删除文件根据自己需求删,基本都是一些日志占用比较多,不需要的可以删除掉。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。