慧亚实业 發表於 2024-12-20 01:03:00

Linux服务器上部署Redis流程

<h1 id="前言">前言</h1>
<p>Redis版本7.0.4<br>
服务器版本:Linux CentOS 8.0 64位</p>
<h2 id="1下载redis">1.下载Redis</h2>
<p>进入官网找到下载地址 https://redis.io/download</p>
<p>进入到Xshell控制台(默认当前是root根目录),输入wget 将上面复制的下载链接粘贴上,如下命令:</p>
<pre><code>wget http://download.redis.io/releases/redis-7.0.4.tar.gz
</code></pre>
<p>敲入回车键执行后,等待下载完成。</p>
<h2 id="2解压并安装redis">2.解压并安装Redis</h2>
<p><strong>解压</strong><br>
下载完成后需要将压缩文件解压,输入以下命令解压到当前目录</p>
<pre><code>tar -zvxf redis-7.0.4.tar.gz
</code></pre>
<p>解压后在根目录上输入ls 列出所有目录会发现与下载redis之前多了一个redis-7.0.4.tar.gz文件和 redis-7.0.4的目录。</p>
<p><strong>移动redis目录</strong><br>
一般都会将redis目录放置到 /usr/local/redis目录,所以这里输入下面命令将目前在/root目录下的redis-7.0.4文件夹更改目录,同时更改文件夹名称为redis。</p>
<pre><code>mv /root/redis-7.0.4 /usr/local/redis
</code></pre>
<p>cd 到/usr/local目录下输入ls命令可以查询到当前目录已经多了一个redis子目录,同时/root目录下已经没有redis-7.0.4文件夹</p>
<p><strong>编译</strong><br>
cd到/usr/local/redis目录,输入命令make执行编译命令,接下来控制台会输出各种编译过程中输出的内容。</p>
<pre><code>make
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005009500-1909157029.png"></p>
<h2 id="3安装">3.安装</h2>
<p>输入以下命令:</p>
<pre><code>make PREFIX=/usr/local/redis install
</code></pre>
<p>这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,</p>
<p>库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。<br>
<img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005109095-1055117413.png"></p>
<h2 id="4启动redis">4.启动redis</h2>
<p>根据上面的操作已经将redis安装完成了。在目录/usr/local/redis 输入下面命令启动redis</p>
<pre><code>./bin/redis-server&amp; ./redis.conf
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005201012-213577606.png"></p>
<p>上面的启动方式是采取后台进程方式,下面是采取显示启动方式(如在配置文件设置了daemonize属性为yes则跟后台进程方式启动其实一样)。</p>
<pre><code>./bin/redis-server ./redis.conf
</code></pre>
<p>两种方式区别无非是有无带符号&amp;的区别。 redis-server 后面是配置文件,目的是根据该配置文件的配置启动redis服务。redis.conf配置文件允许自定义多个配置文件,通过启动时指定读取哪个即可。</p>
<h2 id="5redisconf配置文件">5.redis.conf配置文件</h2>
<p>在目录/usr/local/redis下有一个redis.conf的配置文件。我们上面启动方式就是执行了该配置文件的配置运行的。我么可以通过cat、vim、less等Linux内置的读取命令读取该文件。</p>
<p>也可以通过redis-cli命令进入redis控制台后通过CONFIG GET * 的方式读取所有配置项。 如下:</p>
<pre><code>redis-cli
CONFIG GET *
</code></pre>
<p>回车确认后会将所有配置项读取出来,如下图<br>
<img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005348562-122350075.png"></p>
<p>这里列举下比较重要的配置项<br>
<img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005412041-359733265.png"></p>
<p>这里我要<strong>将daemonize改为yes</strong>,不然我每次启动都得在redis-server命令后面加符号&amp;,不这样操作则只要回到Linux控制台则redis服务会自动关闭,同时也<strong>将bind注释</strong>,将<strong>protected-mode设置为no</strong>。<br>
这样启动后我就可以在外网访问了。</p>
<pre><code>vim /usr/local/redis/redis.conf
</code></pre>
<p>通过 /daemonize查找到属性,默认是no,更改为yes即可。 (通过/关键字查找出现多个结果则使用 n字符切换到下一个即可,查找到结果后输入:noh退回到正常模式)</p>
<p>如下图:</p>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005635106-684255296.png"></p>
<p>其他两个属性也是同样方式查找和编辑即可。</p>
<h3 id="查看redis是否正在运行">查看Redis是否正在运行</h3>
<h4 id="1采取查看进程方式">1、采取查看进程方式</h4>
<pre><code>ps -aux | grep redis
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005738382-1227099220.png"></p>
<h4 id="2采取端口监听查看方式">2、采取端口监听查看方式</h4>
<pre><code>netstat -lanp | grep 6379
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005815868-186976066.png"></p>
<h3 id="redis-cli">redis-cli</h3>
<p>redis-cli是连接本地redis服务的一个命令,通过该命令后可以既然怒redis的脚本控制台。如下图</p>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005859616-807979331.png"></p>
<p>输入exit可以退出redis脚本控制台</p>
<h3 id="关闭运行中的redis服务">关闭运行中的Redis服务</h3>
<p>输入redis-cli 进入控制台后输入命令shutdown即可关闭运行中的Redis服务了。如下图:<br>
<img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220005946116-804839895.png"></p>
<h3 id="远程连接不上问题">远程连接不上问题</h3>
<p>如下图,已经开放了Redis服务的ip不为127.0.0.1,理论上远程客户端应该可以连接了,而且云服务器的端口号也在安全组里开放了。<br>
<img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220010032918-577465653.png"></p>
<p>启动redis两种方式: redis-server /usr/local/redis/etc/redis.conf 或 redis-server&amp; /usr/local/redis/etc/redis.conf【守护进程方式】</p>
<h3 id="测试连接">测试连接</h3>
<p><img src="https://img2024.cnblogs.com/blog/2212230/202412/2212230-20241220010049602-166882401.png"></p>
<h3 id="1-查看redis进程">1. 查看redis进程</h3>
<p>ps -aux|grep redis</p>
<p>没有服务启动</p>
<pre><code># ps -aux|grep redis
root      13090.00.0 112660   976 pts/0    S+   09:28   0:00 grep --color=auto redis
</code></pre>
<p>有服务启动</p>
<pre><code># ps -aux|grep redis
root      13130.10.2 177616 17736 ?      Ssl09:32   0:00 ./redis-server *:6379
root      13190.00.0 112660   976 pts/0    S+   09:33   0:00 grep --color=auto redis
</code></pre>
<h3 id="2-查找redis安装目录">2. 查找redis安装目录</h3>
<p>whereis redis</p>
<blockquote>
<p>whereis redis<br>
redis: /usr/local/redis<br>
我们可以看到redis在该目录下安装,然后找到配置文件redis.conf</p>
</blockquote>
<h3 id="3-找到redisconf文件所在目录">3. 找到redis.conf文件所在目录</h3>
<blockquote>
<p># find /usr/local/redis/ -name redis.conf<br>
/usr/local/redis/redis.conf</p>
</blockquote>
<h3 id="4-启动redis服务">4. 启动redis服务</h3>
<blockquote>
<p># ./redis-server /usr/local/redis/redis.conf</p>
</blockquote>
<h3 id="5redis修改密码">5.redis修改密码</h3>
<pre><code>修改配置文件:

1. vim redis.conf

2.requirepass 123//指定密码123
</code></pre>
<h3 id="6linux下进入redis">6.linux下进入redis</h3>
<pre><code># ./redis-cli -h 192.168.102.122 -p 6379 -a //密码
</code></pre>
<h3 id="7退出客户端">7.退出客户端。</h3>
<pre><code>quit
</code></pre><br><br>
来源:https://www.cnblogs.com/chenshibao/p/18618158
頁: [1]
查看完整版本: Linux服务器上部署Redis流程