改涨薪了 發表於 2024-3-5 00:00:00

详解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 后边加一个&amp;,表示让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 -&gt;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]
查看完整版本: 详解linux下redis安装、启动与停止,redis做成服务