redis 无法启动怎么办呢,我们直接通过命令方式来启动吗,今天小编来为各位说说关于redis 无法启动的问题了,希望文章能够帮助到各位同学的哦。
redis突然挂掉后,无法启动,查看log日志,发现报Short read or OOM loading DB. Unrecoverable error, aborting now
解决办法:
[root@localhost ~]# rm -f /var/lib/redis/dump.rdb
[root@localhost ~]# rm -f /var/run/redis.pid
[root@localhost ~]# service redis start
问题二
The Windows version of Redis allocates a memory mapped heap for sharing with
the forked process used for persistence operations. In order to share this
memory, Windows allocates from the system paging file a portion equal to the
size of the Redis heap. At this time there is insufficient contiguous free
space available in the system paging file for this operation (Windows error
0x5AF). To work around this you may either increase the size of the system
paging file, or decrease the size of the Redis heap with the --maxheap flag.
Sometimes a reboot will defragment the system paging file sufficiently for
this operation to complete successfully.
Please see the documentation included with the binary distributions for more
details on the --maxheap flag.
大概意思是:没有足够的可用空间,可以增加系统的大小分页文件,或减少Redis的堆的大小
使用--maxheap标志
有时重启将充分整理系统分页文件(重启可以解决)
可以再启动命令后面加maxheap参数重新分配堆大小。
redis-server.exe redis.windows.conf --maxheap 200m
问题三
redis配置错误导致服务器不能启动
redis-server忘了把配置里面的daemonize的no改成yes
所以把redis-server加入到了/etc/rc.local里面,在服务器启动的时候就会阻塞在这里,导致服务器不能启动。
[解决方案]
使用GRUB时,可以添加一个S(大写S)到内核命令行,可以进入单用户模式。
要做到这样, 需要重新起动系统,当GRUB的屏幕出现时:
1、使用方向键选择你希望引导的内核。
2、按下e键以编辑这个命令行。
3、选择以单词kernel起头的这行。
4、按下e键以编辑这个命令行。
5、在行末添加一个字母S
6、回车接受改动。
7、按b键接受修改并且启动内核。
这样就会进入单用户模式,可以在bash下执行命令。
此时 进入 /etc/rc.local把文件修改回来
删除其中的这两行
redis-server /home/redis/redis.conf
rabbitmq-server