Redis探索之旅(5)- 在Linux下将Redis注册成服务
2017-07-21 15:41
211 查看
Redis探索之旅(5)- 在Linux下将Redis注册成服务
<div class="article_manage clearfix"> <div class="article_l"> <span class="link_categories"> 标签: <a href="http://www.csdn.net/tag/Redis" target="_blank" onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_tag']);">Redis</a> </span> </div> <div class="article_r"> <span class="link_postdate">2016-09-03 20:50</span> <span class="link_view" title="阅读次数">1083人阅读</span> <span class="link_comments" title="评论次数"> <a href="#comments" onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_pinglun'])">评论</a>(0)</span> <span class="link_collect tracking-ad" data-mod="popu_171"> <a href="javascript:void(0);" onclick="javascript:collectArticle('Redis%e6%8e%a2%e7%b4%a2%e4%b9%8b%e6%97%85%ef%bc%885%ef%bc%89-+%e5%9c%a8Linux%e4%b8%8b%e5%b0%86Redis%e6%b3%a8%e5%86%8c%e6%88%90%e6%9c%8d%e5%8a%a1','52425238');return false;" title="收藏" target="_blank">收藏</a></span> <span class="link_report"> <a href="#report" onclick="javascript:report(52425238,2);return false;" title="举报">举报</a></span> </div> </div> <style type="text/css"> .embody{ padding:10px 10px 10px; margin:0 -20px; border-bottom:solid 1px #ededed; } .embody_b{ margin:0 ; padding:10px 0; } .embody .embody_t,.embody .embody_c{ display: inline-block; margin-right:10px; } .embody_t{ font-size: 12px; color:#999; } .embody_c{ font-size: 12px; } .embody_c img,.embody_c em{ display: inline-block; vertical-align: middle; } .embody_c img{ width:30px; height:30px; } .embody_c em{ margin: 0 20px 0 10px; color:#333; font-style: normal; } </style> <script type="text/javascript"> $(function () { try { var lib = eval("("+$("#lib").attr("value")+")"); var html = ""; if (lib.err == 0) { $.each(lib.data, function (i) { var obj = lib.data[i]; //html += '<img src="' + obj.logo + '"/>' + obj.name + " "; html += ' <a href="' + obj.url + '" target="_blank">'; html += ' <img src="' + obj.logo + '">'; html += ' <em><b>' + obj.name + '</b></em>'; html += ' </a>'; }); if (html != "") { setTimeout(function () { $("#lib").html(html); $("#embody").show(); }, 100); } } } catch (err) { } }); </script> <div class="category clearfix"> <div class="category_l"> <img src="http://static.blog.csdn.net/images/category_icon.jpg"> <span>分类:</span> </div> <div class="category_r"> <label onclick="GetCategoryArticles('6399348','andamajing','top','52425238');"> <span onclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_fenlei']);">Redis<em>(11)</em></span> <img class="arrow-down" src="http://static.blog.csdn.net/images/arrow_triangle _down.jpg" style="display:inline;"> <img class="arrow-up" src="http://static.blog.csdn.net/images/arrow_triangle_up.jpg" style="display:none;"> <div class="subItem"> <div class="subItem_t"><a href="http://blog.csdn.net/andamajing/article/category/6399348" target="_blank">作者同类文章</a><i class="J_close">X</i></div> <ul class="subItem_l" id="top_6399348"> </ul> </div> </label> </div> </div> <div class="bog_copyright"> <p class="copyright_p">版权声明:本文为博主原创文章,未经博主允许不得转载。</p> </div>
在《Redis探索之旅(3)-
在Windows下将Redis注册成本地服务》我们讲述了如何在Windows下的操作方法,在这篇文章中,我们看看在Linux下如何操作。
我们按照下面的步骤一步一步来。
(1)将Redis目录下的初始化脚本拷贝到/etc/rc.d/init.d目录;
redis的初始化脚本目录为:
/usr/local/src/redis/utils/redis_init_script
将这个目录拷贝到目标目录,同时将文件夹名称进行修改:
[javascript] view plain copy print?cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
然后添加注册服务,如下所示:
[javascript] view plain copy print?chkconfig –add redis
chkconfig --add redis
执行后,可能你会遇到下面的错误:
[javascript] view plain copy print?redis服务不支持chkconfig
redis服务不支持chkconfig
因此,我们还需要对初始化脚本做一些修改。
(2)修改脚本
我们首先打开redis脚本,修改后内容如下:
[javascript] view plain copy print?#!/bin/sh
#chkconfig: 2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_{REDISPORT}.pid </span></span></li><li class="alt"><span>CONF=<span class="string">"/etc/redis/{REDISPORT}.conf”
case “1"</span><span> </span><span class="keyword">in</span><span> </span></span></li><li class=""><span> start) </span></li><li class="alt"><span> <span class="keyword">if</span><span> [ -f PIDFILE ]
then
echo ”PIDFILE exists, process is already running or crashed"</span><span> </span></span></li><li class=""><span> <span class="keyword">else</span><span> </span></span></li><li class="alt"><span> echo <span class="string">"Starting Redis server..."</span><span> </span></span></li><li class=""><span> EXEC CONF & </span></li><li class="alt"><span> fi </span></li><li class=""><span> ;; </span></li><li class="alt"><span> stop) </span></li><li class=""><span> <span class="keyword">if</span><span> [ ! -f PIDFILE ]
then
echo ”PIDFILE does not exist, process is not running"</span><span> </span></span></li><li class="alt"><span> <span class="keyword">else</span><span> </span></span></li><li class=""><span> PID=(cat PIDFILE) </span></li><li class="alt"><span> echo <span class="string">"Stopping ..."</span><span> </span></span></li><li class=""><span> CLIEXEC -p REDISPORT shutdown </span></li><li class="alt"><span> <span class="keyword">while</span><span> [ -x /proc/{PID} ]
do
echo ”Waiting for Redis to shutdown …”
sleep 1
done
echo ”Redis stopped”
fi
;;
*)
echo ”Please use start or stop as first argument”
;;
esac
#!/bin/sh
#chkconfig: 2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_REDISPORT.pidCONF="/etc/redis/{REDISPORT}.conf"
case "1"instart)if[−fPIDFILE ]
then
echo "PIDFILEexists,processisalreadyrunningorcrashed"elseecho"StartingRedisserver..."EXEC CONF &
fi
;;
stop)
if [ ! -fPIDFILE ]
then
echo "PIDFILEdoesnotexist,processisnotrunning"elsePID=(cat PIDFILE)echo"Stopping..."CLIEXEC -p REDISPORTshutdownwhile[−x/proc/{PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
脚本的修改地方主要涉及以下几个地方:
(a)第二行增加如下内容
[javascript] view plain copy print?#chkconfig: 2345 80 90
#chkconfig: 2345 80 90
(b)原脚本EXEC和CLIEXEC的值因为目录不同而有所修改
[javascript] view plain copy print?EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli
EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli
(c)redis启动的命令改为以后台方式启动
[javascript] view plain copy print?EXEC CONF &
$EXEC $CONF &
(d)将redis配置文件拷贝到/etc/redis/端口ID.conf,如下所示:
[javascript] view plain copy print?mkdir /etc/redis cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf
mkdir /etc/redis cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf
默认情况下,redis启动时不启用鉴权认证,如果有需要,可以在配置文件中进行设置requirepass参数。
通过上面的脚本修改后,我们可以再次使用下面的命令进行注册服务:
[javascript] view plain copy print?chkconfig –add redis
chkconfig --add redis
注册成功后,然后就是启动服务了,如下所示:
[javascript] view plain copy print?service redis start
service redis start
至此,单实例redis服务便启动起来了。
本篇内容参考博客地址:http://www.cnblogs.com/_popc/p/3684835.html,特此说明,谢谢。
document.getElementById("bdshell_js").src = "http://bdimg.share.baidu.com/static/js/shell_v2.js?cdnversion=" + Math.ceil(new Date()/3600000)
<div id="digg" articleid="52425238"> <dl id="btnDigg" class="digg digg_enable" onclick="btndigga();"> <dt>顶</dt> <dd>0</dd> </dl> <dl id="btnBury" class="digg digg_enable" onclick="btnburya();"> <dt>踩</dt> <dd>0</dd> </dl> </div> <div class="tracking-ad" data-mod="popu_222"><a href="javascript:void(0);" target="_blank"> </a> </div> <div class="tracking-ad" data-mod="popu_223"> <a href="javascript:void(0);" target="_blank"> </a></div> <script type="text/javascript"> function btndigga() { $(".tracking-ad[data-mod='popu_222'] a").click(); } function btnburya() { $(".tracking-ad[data-mod='popu_223'] a").click(); } </script>
相关文章推荐
- Redis探索之旅(5)- 在Linux下将Redis注册成服务
- Redis探索之旅(5)- 在Linux下将Redis注册成服务
- Redis探索之旅(5)- 在Linux下将Redis注册成服务
- Redis探索之旅(4)- 在Linux环境下搭建单实例Redis服务实例
- Redis探索之旅(3)- 在Windows下将Redis注册成本地服务
- 【Redis】Linux部署单个redis-3.0.6服务,实现开机启动,注册服务
- Redis探索之旅(3)- 在Windows下将Redis注册成本地服务
- redis 注册 linux 服务
- Redis探索之旅(3)- 在Windows下将Redis注册成本地服务
- Redis探索之旅(4)- 在Linux环境下搭建单实例Redis服务实例
- Redis探索之旅(3)- 在Windows下将Redis注册成本地服务
- Redis探索之旅(4)- 在Linux环境下搭建单实例Redis服务实例
- Linux下Redis的安装,注册服务
- linux 下将tomcat注册成服务并开机启动
- RedisDesktopManager连接远程Linux系统的Redis服务(图文)
- ArcGIS for Server Linux版服务发布(不同数据源、文件夹注册方式)
- Redis探索之旅(11)- Redis服务之主从架构实现
- 在Windows下将Redis注册为本地服务
- Linux(Debian) 上安装tomcat并注册服务开机自启动
- java程序实现Linux下的服务的启停、注册、异常