详解linux下redis安装、启动与停止,redis做成服务
<p>如果的linux可以链接网络,那么可以直接联网下载。直接输入代码:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_221068">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">wget http:</code><code class="bash plain">//redis</code><code class="bash plain">.googlecode.com</code><code class="bash plain">/files/redis-3</code><code class="bash plain">.0.2.</code><code class="bash functions">tar</code><code class="bash plain">.gz</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
但是不建议这么做,因为google再中国的服务好像被封了,可能会链接不上。所以我们直接去其他地方下载,然后上传到linux服务上。这里我下载了redis-3.0.2.tar.gz 版本。然后使用tar -zxvf redis_3.0.2.tar.gz</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/1f8627ef83f4bb6265c518e42f3f819b.jpg"></p>
<p>
我们会看到在该目录下多了一个文件,redis-3.0.2 ,</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/b88c0e8088e8d283425341bdbb09e163.jpg"></p>
<p>
我们进入该目录,然后编译执行命令make,等待10左右,我们就会看到已经编译完了,我们看到如下界面,说明我们安装成功了。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/4bd6a53c23ec12d7537150437d04c15f.jpg"> </p>
<p>
我们在redis-3.0.2目录下会看到多了几个文件 ,其中redis-server是用来启动服务用的,redis-cli是用来启动客户端用的,其他的还不清楚,大家可以查一下。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/a7498e32cdcc5e4c3cc6168fc2f62d09.jpg"></p>
<p>
我们可以启动一下,在该目录下输入./redis-server 命令,就会看到如下图所示。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/beb990bd76f47fedb595aee14e5eefc0.jpg"></p>
<p>
这说明我们的redis安装成功了。你也可以使用./redis.cli–p 6379 进如客户端,进行测试,这里就不再做了。</p>
<p>
<strong>三、设置服务</strong></p>
<p>
可以看到如果我们启动redis服务的话,每次都要进入到安装目录,这样是不是很繁琐,所以我们将redis做成一个服务,我们直接启动。</p>
<p>
(设置服务前如果redis服务在开着 要先关闭redis服务 不然后面生成不了redis-6379.pid,可以查看redis服务进程 关闭杀死resid服务)</p>
<p>
首先将utils/redis_init_script文件复制到/etc/init.d下,同时易名为redis。执行命令</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_901888">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cp</code> <code class="bash plain">/usr/local/redis-3</code><code class="bash plain">.0.2</code><code class="bash plain">/utils/redis_init_script</code> <code class="bash plain">/etc/rc</code><code class="bash plain">.d</code><code class="bash plain">/init</code><code class="bash plain">.d</code><code class="bash plain">/redis</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
然后在执行命令,vi /etc/rc.d/init.d/redis,并在文档第二行添加# chkconfig: 2345 80 90。如果/usr/local/redis/bin中没有redis-server和redis-cli文件的话,我们要在我们的安装目录下复制一个过来。否则服务启动时找不到redis-server。下图第二个红框所示。并且在第三个$exec $conf 后边加一个&,表示让redis作为后台服务启动,否则该服务会独占输入屏。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/4ab05461bd1a8784bf34c949f74564db.jpg"></p>
<p>
可以看到在/etc/init.d/redis文件中有这么一行:conf="/etc/redis/${redisport}.conf"。于是将redis配置文件拷贝到/etc/redis/下 。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_39333">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">mkdir</code> <code class="bash plain">/etc/redis</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">cp</code> <code class="bash plain">/usr/local/redis-3</code><code class="bash plain">.0.2</code><code class="bash plain">/redis</code><code class="bash plain">.conf </code><code class="bash plain">/etc/redis/6379</code><code class="bash plain">.conf</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
完成上面的操作之后,即可注册服务:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_894797">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">chkconfig --add redis</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
然后启动redis服务</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_126569">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">service redis start</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
这样我们就将redis服务注册好了,</p>
<p>
如果service redis stop ,你会发现他提示/var/run/redis_6379.pid does not exist, process is not running 这说明在run下没有这个文件,我们进入到/var/run下发先真的没有这个文件,但是有redis.pid文件。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/7e9144d3b5339ff063d2ae3d5a4f2b75.jpg"></p>
<p>
我们我们要将/etc/rc.d/init.d/redis 文件中的redis_${redisport}.pid修改为redis.pid。</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/14ce5fd1c62f707fcb4423d796f3e476.jpg"></p>
<p>
这样我们重启服务后,在用该命令关闭就可以了。到这里我们的redis服务就安装好了,并做好了一个服务。</p>
<p>
以上就是linux下安装redis的全过程,希望对大家安装redis有所帮助。</p>
<p>
<strong>java 客户端链接不上redis解决方案</strong></p>
<p>
telnet 192.168.0.104 6379</p>
<p>
发现端口不能拼通,但是linu下其他的端口能拼通,说明就是redis自身配置的问题了</p>
<p>
看了下配置文件,发现配置文件绑定了本地ip,该配置会导致,其他ip登录被拒绝,所以我们把它注释掉</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/72b5305854053a4e77d4c9a0046441e7.jpg"></p>
<p>
接下来再测试运行,发先已经链接上了,说明问题解决,但是又出现新的问题 :denied redis is running in protected mode because protected mode is enabled…</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/269182dcfc00c7115816940c7ffe3fc5.jpg"></p>
<p>
该问题说,redis目前处于受保护模式,不允许非本地客户端链接,我们可以通过给redis设置密码,然后客户端链接的时候,写上密码就可以解决了</p>
<p>
<img title="详解linux下redis安装、启动与停止,redis做成服务" alt="详解linux下redis安装、启动与停止,redis做成服务" src="https://zhuji.jb51.net/uploads/img/202305/ca4846c31224e188dac20ad5710ff940.jpg"></p>
<p>
配置redis的命令</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_948828">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">config </code><code class="bash functions">set</code> <code class="bash plain">requirepass 123 ->123是密码</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
现在java客户端通过配置主机ip号,密码就能链接上了</p>
<p>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
<p>
原文链接:http://blog.csdn.net/gaowenhui2008/article/details/53906386</p>
頁:
[1]