在CentOS 7下安装Redis7可以通过以下两种方法实现:手动编译安装和使用YUM进行安装。
CentOS 7系统的环境和版本:
1 2 $ cat /etc/centos-release CentOS Linux release 7.9.2009 (Core)
手动编译安装参考官方文档:https://redis.io/docs/latest/operate/oss\_and\_stack/install/install-redis/install-redis-from-source/
下载Redis7安装包: 从Redis的官方网站下载Redis7的源代码包。例如,下载Redis7.2.0: 1 2 $ cd /opt/soft $ sudo wget https://download.redis.io/releases/redis-7.2.0.tar.gz
编译并安装Redis7: 下载完成后,解压缩源代码包,并进入解压后的目录进行编译和安装: 1 2 3 4 $ sudo tar -zxvf redis-7.2.0.tar.gz $ cd redis-7.2.0 $ sudo make $ sudo make install
如果编译过程中报错,很有可能是操作系统没有安装如下依赖,Redis的编译依赖于GCC和一些其他开发工具。可以通过以下命令安装这些依赖:
1 2 $ sudo yum update -y $ sudo yum install -y gcc tcl make
在解压缩源代码包下有一个README.md文件,介绍了如何源码安装redis 。
配置Redis: 编译安装完成后,Redis的可执行文件(如redis-server、redis-cli)会被放置在/usr/local/bin/目录下。 Redis的配置文件默认位于源代码目录下的redis.conf。可以将此文件复制到/etc/或其他你喜欢的位置,并对其进行编辑以满足需求。 1 2 $ sudo cp redis.conf /etc/redis.conf $ sudo vim /etc/redis.conf
根据需要修改配置文件,例如:
将bind 127.0.0.1改为bind 0.0.0.0,允许远程连接(如果需要的话)。 将daemonize no改为daemonize yes,让Redis在后台运行。 设置密码(可选),取消requirepass的注释并设置密码。 设置日志文件路径和数据库持久化方式等(可选)。 启动Redis服务: 配置完成后,可以使用以下命令启动Redis服务: 1 $ redis-server /etc/redis.conf
验证Redis服务: 1 2 3 4 5 $ redis-cli 127.0.0.1:6379> auth redispass OK 127.0.0.1:6379> ping PONG
设置Redis开机自启: 如果想让Redis在系统启动时自动启动,需要创建一个systemd服务单元文件: 1 $ sudo vim /etc/systemd/system/redis.service
在文件中添加以下内容(注意修改ExecStart的路径以匹配Redis配置文件位置):
1 2 3 4 5 6 7 8 9 10 11 12 13 [Unit] Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
创建一个redis用户和组(如果它们不存在的话),并将/etc/redis.conf文件的权限设置给这个用户。
1 2 $ sudo groupadd redis $ sudo useradd -g redis redis
重新加载systemd配置,启动Redis服务,并设置开机自启:
1 2 3 $ sudo systemctl daemon-reload $ sudo systemctl start redis $ sudo systemctl enable redis
使用YUM进行安装更新YUM源: 由于CentOS 7官方镜像已经被下单,官方的镜像地址mirrorlist.centos.org无法找到所需的文件,这里使用阿里云的镜像地址: 1 $ sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
在进行任何安装之前,首先要确保YUM源是最新的。运行以下命令来更新YUM源:
如果不更改镜像地址,执行上面的命令会抛出如下错误:
1 2 Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"
添加EPEL和Remi Repository: Redis7不在CentOS 7的默认仓库中,因此需要添加EPEL(Extra Packages for Enterprise Linux)和Remi Repository。 安装EPEL:
1 $ sudo yum install epel-release -y
安装Remi repository:
1 $ sudo yum install -y https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm
启用Remi仓库:
1 $ sudo yum-config-manager --enable remi
安装Redis 7: 使用YUM命令从Remi仓库中下载并安装Redis 7: 1 $ sudo yum install redis -y
配置文件默认位置在/etc/redis.conf。
启动Redis服务: 安装完成后,启动Redis服务: 1 $ sudo systemctl start redis
设置Redis服务为开机启动: 使用以下命令确保Redis在系统重启时自动启动: 1 $ sudo systemctl enable redis
验证Redis安装: 使用以下命令检查Redis服务的状态: 1 $ sudo systemctl status redis
如果Redis服务正在运行,应能看到“active (running)”的状态。
redis.conf常用配置开启守护进程模式:
daemonize设置yes或者no区别:
bind配置项用于指定Redis服务器监听的IP地址,默认是使用的本地回环地址,也就是本地才能连接,可以注释掉这一行或者改为bind 0.0.0.0放开所有的外部网络访问。
1 2 #bind 127.0.0.1 bind 0.0.0.0
protected-mode用来限制对Redis服务器的访问。
外部想要访问redis服务,除了需要修改bind的IP地址,还需要满足以下两个条件之一:
protected-mode设置为no,将允许Redis接受来自任何网络接口的连接请求,只要这些接口被Redis监听。 protected-mode设置为yes,同时设置密码(requirepass)