Redis集群不能在shell脚本中直接启动的错误原因

为了方便集群的启动,所以写了一个脚本来启动所有的服务,但是用shell脚本启动redis的时候出现了问题。虽然redis相关的进程已经在运行,但是redis集群就是不起作用。

用以下命令检测集群的状态:

/usr/local/redis/src/redis-trib.rb check 192.168.3.200:6379

错误日志提示信息如下:


26901:M 12 Aug 09:53:29.598 * Increased maximum number of open files to 10032 (it was originally set to 1024).
26901:M 12 Aug 09:53:29.615 * Node configuration loaded, I'm 1715658d95e62555356e375dce9b4a69c7a9375f
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 3.2.0 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in cluster mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 26901
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

26901:M 12 Aug 09:53:29.617 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
26901:M 12 Aug 09:53:29.617 # Server started, Redis version 3.2.0
26901:M 12 Aug 09:53:29.617 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
26901:M 12 Aug 09:53:29.630 * DB loaded from disk: 0.000 seconds
26901:M 12 Aug 09:53:29.630 * The server is now ready to accept connections on port 6379


从提示信息可以看到,他加载rdb的时间为0,也就是说,他没能成功加载到dump.rdb信息。


这个原因主要是由于redis.conf配置文件中的dir参数引起的,因为他默认的是./,也就是当前目录,所以用shell启动的时候他找不到具体的dump.rdb文件。

解决的办法是,给dir属性一个绝对路径,如下所示

dir    /usr/local/redis/6379/


所以redis会根据配置文件的dir属性,把dump.rdb文件放到/usr/local/redis/6379下





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值