<div class="article_manage clearfix">
<div class="article_l">
<span class="link_categories">
标签:
<a href="http://www.youkuaiyun.com/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.youkuaiyun.com/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.youkuaiyun.com/images/arrow_triangle _down.jpg" style="display:inline;">
<img class="arrow-up" src="http://static.blog.youkuaiyun.com/images/arrow_triangle_up.jpg" style="display:none;">
<div class="subItem">
<div class="subItem_t"><a href="http://blog.youkuaiyun.com/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
将这个目录拷贝到目标目录,同时将文件夹名称进行修改:
- 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
然后添加注册服务,如下所示:
- chkconfig –add redis
chkconfig --add redis
执行后,可能你会遇到下面的错误:
- redis服务不支持chkconfig
redis服务不支持chkconfig
因此,我们还需要对初始化脚本做一些修改。
(2)修改脚本
我们首先打开redis脚本,修改后内容如下:
- #!/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
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)第二行增加如下内容
- #chkconfig: 2345 80 90
#chkconfig: 2345 80 90
(b)原脚本EXEC和CLIEXEC的值因为目录不同而有所修改
- 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启动的命令改为以后台方式启动
- EXEC CONF &
$EXEC $CONF &
(d)将redis配置文件拷贝到/etc/redis/端口ID.conf,如下所示:
- 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参数。
通过上面的脚本修改后,我们可以再次使用下面的命令进行注册服务:
- chkconfig –add redis
chkconfig --add redis
注册成功后,然后就是启动服务了,如下所示:
- service redis start
service redis start
至此,单实例redis服务便启动起来了。
本篇内容参考博客地址:http://www.cnblogs.com/_popc/p/3684835.html,特此说明,谢谢。
<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>
本文详细介绍了如何在Linux系统中将Redis安装并注册为服务的过程,包括修改初始化脚本、配置文件路径调整等内容。
3591

被折叠的 条评论
为什么被折叠?



