Redis安装和启动报错解决

avatar 2017年10月20日19:35:04 评论 146 views

本文介绍 Linux 系统安装 Redis,以及基本配置和常用命令。

一、安装 Redis

安装方法和下载地址这里也有:https://redis.io/download

1、使用 ssh 连接到 linux 服务器

ssh root@ip地址

2、切换到安装目录

cd /www/server

3、下载 Redis 安装包

wget http://download.redis.io/releases/redis-4.0.2.tar.gz

4、解压之

tar xzf redis-4.0.2.tar.gz

5、编译安装

cd redis-4.0.2

make

至此基本安装成功

 

二、启动报错解决

切换到 Redis 安装目录,键入以下命令启动 Redis

src/redis-server redis.conf

这个时候如果直接启动会报几个 Warnning

1、错误一:

Warning: no config file specified, using the default config.

In order to specify a config file use 'redis-server /path/to/redis.conf'

解决方案:

redis-server redis.conf

 

2、其他三个常见错误

解决方案转自:http://blog.csdn.net/a491857321/article/details/52006376

第一个警告:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

意思是:TCP  backlog设置值,511没有成功,因为 /proc/sys/net/core/somaxconn这个设置的是更小的128.

临时解决方法:(即下次启动还需要修改此值)

echo 511 > /proc/sys/net/core/somaxconn

永久解决方法:(即以后启动还需要修改此值)

将其写入/etc/rc.local文件中。

 

 

第二个警告:overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to/etc/sysctl.conf andthen reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

意思是:overcommit_memory参数设置为0!在内存不足的情况下,后台程序save可能失败。建议在文件 /etc/sysctl.conf 中将overcommit_memory修改为1。

临时解决方法:echo "vm.overcommit_memory=1" > /etc/sysctl.conf

永久解决方法:将其写入/etc/sysctl.conf文件中。

 

第三个警告:you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix thisissue 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 thesetting after a reboot. Redis must be restarted after THP is disabled.

意思是:你使用的是透明大页,可能导致redis延迟和内存使用问题。执行 echo never > /sys/kernel/mm/transparent_hugepage/enabled 修复该问题。

临时解决方法:

echo never > /sys/kernel/mm/transparent_hugepage/enabled

永久解决方法:

将其写入/etc/rc.local文件中

 

三、修改 Redis 为后端启动

如果我们直接执行 redis-server ,为前端执行,会出现如下图界面,但是此时终端不管输什么都无效了。

只能按 Ctrl+C强行退出了

 

于是我们可以配置后端启动Redis,具体操作如下

1、编辑 redis.conf

vim redis.conf

2、修改 daemonize 的值为yes

daemonize yes 

 

3、启动 Redis

src/redis-server redis.conf

 

四、Linux 几个命令

1、启动 Redis

src/redis-server   (后端启动,不推荐使用)

src/redis-server redis.conf (前端启动)

 

2、查询全部启动的端口

netstat -anp

3、关闭进程

kill -9 PID

4、查询 redis 是否启动

ps -ef | grep -i redis

5、启动 客户端

src/redis-cli

 

5、停止 Redis

src/redis-cli shutdown

 

  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: