CentOS 7中安装Redis

一、判断是否安装了gcc

bash 复制代码
gcc --version

如果未安装,直接安装gcc环境

bash 复制代码
yum install -y gcc tcl

二、安装Redis

bash 复制代码
 cd /usr/local/ 
bash 复制代码
wget https://download.redis.io/releases/redis-7.2.0.tar.gz

解压redis-7.2.0.tar.gz文件

bash 复制代码
 tar -zxvf redis-7.2.0.tar.gz
bash 复制代码
cd redis-7.2.0
bash 复制代码
make && make install

检查是否安装成功

bash 复制代码
 redis-server
配置

备份

bash 复制代码
 cp redis.conf redis.conf.bck
bash 复制代码
 vi redis.conf

修改的内容如下

搜索功能:/+要搜索的内容,n:下一个搜索结果,N:上一个搜索结果

daemonize 的值从 no 修改成 yes(Redis服务默认是前台运行,需要修改为后台运行)

bash 复制代码
daemonize no ---> daemonize yes

requirepass foobared注释去掉并在后加上密码(注意中间加个空格)

bash 复制代码
requirepass foobared ---> requirepass 123456

设置redis记录日志,默认不记录日志(redis.log为文件名)

bash 复制代码
 logfile " " ---> logfile "redis.log"

进入redis安装路径

可以启动的时候不写redis.conf的全限定名称

bash 复制代码
 redis-server redis.conf

这次启动并没有任何的日志输出,因为已经启动后台运行了,怎么知道有没有进行后台运行呢?

bash 复制代码
ps -ef | grep redis

如何停止呢?

bash 复制代码
kill -9 67859

注意事项:

67859是我的进程号,你们根据实际情况填写自己得进程号

这里一定要停止,否则下面设置开机自启时会出现无法启动的问题!!!

开机自启

新建文件

bash 复制代码
 vi /etc/systemd/system/redis.service

进入之后将以下信息复制进去:(注意ExecStart的内容为你们自己的redis.conf文件的路径)

bash 复制代码
[Unit]
Description=redis-server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-7.2.0/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

之后便保存退出。

退出之后要让文件生效

bash 复制代码
 systemctl daemon-reload

然后重启redis

bash 复制代码
 systemctl start redis

查看redis状态

bash 复制代码
 systemctl status redis
  1. 停止redis服务
bash 复制代码
systemctl stop redis
  1. 再次查看redis状态
bash 复制代码
systemctl status redis
  1. 最后再次开机自启
bash 复制代码
systemctl enable redis

连接

远程

通过Redis服务器的命令行是可以正常使用Redis的, 但是通过工具远程连接就不行,这里主要有两个方面的原因:

操作系统防火墙未关闭
触发了Redis的保护模式

防火墙

其实就是你的远程连接请求被操作系统的防火墙给拦截了,导致你无法进行远程连接,解决方案有两个:

(1)给防火墙增加端口号,让防火墙对于指定的端口号不再进行拦截,类似白名单

(2)关闭防火墙,简单粗暴,但是一般这种操作用的比较多,但是生产环境下,不是很推荐直接关闭,会有安全风险

停止firewalld服务

bash 复制代码
systemctl stop firewalld

禁用firewalld服务,使其不会在系统启动时自动启动

bash 复制代码
systemctl disable firewalld

验证firewalld服务已被禁用

bash 复制代码
systemctl is-enabled firewalld

保护模式

同时满足以下两个条件就会触发Redis的保护模式:

(1)bind未指定ip

(2)未关闭保护模式

解决方案

进入redis.conf

bash 复制代码
 vi redis.conf

(1)将bind 127.0.0.1 -::1注释掉,在下边增加:bind 0.0.0.0

(2)将protected-mode yes修改为:protected-mode no

重启Redis服务

bash 复制代码
systemctl start redis
相关推荐
胖大和尚7 分钟前
完整的 CentOS 6.10 虚拟机安装启动脚本
linux·运维·centos
熙曦Sakura1 小时前
【Linux网络】TCP全连接队列
linux·网络·tcp/ip
fanTuanye1 小时前
redis 缓存穿透,缓存击穿,缓存雪崩
java·redis·缓存
脚比路长1 小时前
win11 安装 wsl ubuntu 18.04后换源失败!
linux
菜鸟康2 小时前
Linux——CMake的快速入门上手和保姆级使用介绍、一键执行shell脚本
linux·运维·服务器
卷卷的小趴菜学编程2 小时前
Linux系统之----基础IO
linux·运维·服务器·文件·fopen·文件操作符·位图传递标志位
陈苏同学3 小时前
[已解决] VS Code / Cursor / Trae 的 PowerShell 终端 conda activate 进不去环境的常见问题
linux·windows·conda
我不是秃头sheep3 小时前
Ubuntu 安装 Docker(镜像加速)完整教程
linux·ubuntu·docker
靡樊3 小时前
网络基础概念
linux·服务器·网络·c++·学习
Kusunoki_D4 小时前
速查 Linux 常用指令 II
linux·运维·服务器