设为首页 收藏本站
查看: 1035|回复: 0

[经验分享] Redis的安装与简单部署

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-6-30 09:45:07 | 显示全部楼层 |阅读模式
截止到本文完成这一天,redis的最稳定版本是3.2.1,其下载地址:http://download.redis.io/releases/redis-3.2.1.tar.gz。直接wget一下就好了。
Redisの安装
在当前目录下#tar -zxvf redis-3.2.1.tar.gz之后,来到redis-3.2.1文件夹里,#make test,之后会出来一大片东西,会提示“\o/ All tests passed without errors!”,但是无法像其他软件那样去#make install,即使#make install还是提示hint:it's a good idea to "make test"。

进入redis文件包文件夹把redis.conf拷贝到/usr/local/redis/etc文件夹里,如果没有此文件夹请新建。再返回redis安装包文件夹的/src文件夹里,把里面所有的绿色脚本文件都mv到/usr/local/redis/bin里,来到/usr/local/redis/bin,#./redis-server,启动服务器程序。

这时,会有如下提示:
19183:C 29 Jun 09:35:07.086 # 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-server /usr/local/redis/etc/redis.conf。就会出现这样的图片。
QQ截图20160630094417.jpg
这里面的英文我拷贝出来,然后加以翻译。

18988:M 29 Jun 09:38:52.458 # WARNING: 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,比你的511要低。
【解决方案】echo 511 > /proc/sys/net/core/somaxconn

18988:M 29 Jun 09:38:52.458 # WARNING 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 and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
警告:overcommit_memory这个值被设定为0!这样的低内存条件后台可能会失败,要解决这个问题,在/etc/sysctl.conf里增加一句话'vm.overcommit_memory = 1'然后重新启动服务器,如果你不想重新启动服务器,那么就输入'sysctl vm.overcommit_memory=1'解决。

18988:M 29 Jun 09:38:52.458 # 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.
警告:你的内核里有THP支持功能,这个可能会和redis建立一些延迟和内存,要解决这个问题请以root的身份运行命令:“echo never > /sys/kernel/mm/transparent_hugepage/enabled”,而且把这句话添加到/etc/rc.local里,这样在服务器重启之后就会关上这个设定,在THP禁用的时候,redis必须被重启。


18988:M 29 Jun 09:38:52.458 * The server is now ready to accept connections on port 6379

把上面三个problem都解决了之后,再一次#./redis-server /usr/local/redis/etc/redis.conf,屏幕变成这样:
QQ截图20160630094424.jpg

提示:服务器已经准备好从6379号端口接收连接了,意味着server端已经启动成功。如果你不喜欢6379号端口,而是喜欢4444号端口,那么就要把/usr/local/redis/etc下的redis.conf里的端口由6379改成4444,然后#./redis-server /usr/local/redis/etc/redis.conf
转后台启动
但是这样的启动是在前台启动,屏幕被霸占了,其他工作都做不了了,比较烦。我们希望redis在后台启动就好,怎么办呢?

#vim /usr/local/redis/etc/redis.conf。找到daemonize,把原来的no改成yes。这意味着redis是后台启动了。

这时候再一次的以redis.conf启动redis.server。就会发现屏幕没有什么变化和提示,但是使用#pstree -p|grep redis查看一下进程就知道redis已经在后台启动了,如图:
QQ截图20160630094433.jpg
用#ps -ef的效果也在上面那张图里,至此整个redis的安装和启动过程结束。

在/usr/local/redis/bin里有一个文件叫redis-cli,cli是client登录的简写,也就是说这个是客户端登陆的启动文件。
QQ截图20160630094439.jpg
可见redis也是那种key-value模式的数据库,在上面的例子里name是key,value是Chris,name是ID,value是33664,但是一旦再一次将name赋值成了99f90,以前的33664就会消失。

而且即使退出客户端连接,再一次进入的话,原有的key和value也不会消失。而如果事前没有启动redis server,那么redis-cli是无法连接的,如图:
QQ截图20160630094445.jpg
Redisの退出
至于关闭redis,方法就效仿其他软件,要么#pkill redis-server,要么就是#/usr/local/redis/bin/redis-cli shutdown



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-237283-1-1.html 上篇帖子: redis主从复制 下篇帖子: redis cluster
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表