当前位置: 首页 > article >正文

【redis】centos7下安装redis7

在CentOS 7下安装Redis7可以通过以下两种方法实现:手动编译安装和使用YUM进行安装。

CentOS 7系统的环境和版本:

$ 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/

  1. 下载Redis7安装包:
    从Redis的官方网站下载Redis7的源代码包。例如,下载Redis7.2.0:
$ cd /opt/soft

$ sudo wget https://download.redis.io/releases/redis-7.2.0.tar.gz
  1. 编译并安装Redis7:
    下载完成后,解压缩源代码包,并进入解压后的目录进行编译和安装:
$ sudo tar -zxvf redis-7.2.0.tar.gz

$ cd redis-7.2.0

$ sudo make

$ sudo make install

如果编译过程中报错,很有可能是操作系统没有安装如下依赖,Redis的编译依赖于GCC和一些其他开发工具。可以通过以下命令安装这些依赖:

$ sudo yum update -y

$ sudo yum install -y gcc tcl make

在解压缩源代码包下有一个README.md文件,介绍了如何源码安装redis。

  1. 配置Redis:
    编译安装完成后,Redis的可执行文件(如redis-server、redis-cli)会被放置在/usr/local/bin/目录下。
    Redis的配置文件默认位于源代码目录下的redis.conf。可以将此文件复制到/etc/或其他你喜欢的位置,并对其进行编辑以满足需求。
$ 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的注释并设置密码。
  • 设置日志文件路径和数据库持久化方式等(可选)。
  1. 启动Redis服务:
    配置完成后,可以使用以下命令启动Redis服务:
$ redis-server /etc/redis.conf
  1. 验证Redis服务:
$ redis-cli
127.0.0.1:6379> auth redispass
OK
127.0.0.1:6379> ping
PONG
  1. 设置Redis开机自启:
    如果想让Redis在系统启动时自动启动,需要创建一个systemd服务单元文件:
$ sudo vim /etc/systemd/system/redis.service

在文件中添加以下内容(注意修改ExecStart的路径以匹配Redis配置文件位置):

[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文件的权限设置给这个用户。

$ sudo groupadd redis

$ sudo useradd -g redis redis

重新加载systemd配置,启动Redis服务,并设置开机自启:

$ sudo systemctl daemon-reload

$ sudo systemctl start redis

$ sudo systemctl enable redis

使用YUM进行安装

  1. 更新YUM源:
    由于CentOS 7官方镜像已经被下单,官方的镜像地址mirrorlist.centos.org无法找到所需的文件,这里使用阿里云的镜像地址:
$ sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

在进行任何安装之前,首先要确保YUM源是最新的。运行以下命令来更新YUM源:

$ sudo yum update -y

如果不更改镜像地址,执行上面的命令会抛出如下错误:

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"
  1. 添加EPEL和Remi Repository:
    Redis7不在CentOS 7的默认仓库中,因此需要添加EPEL(Extra Packages for Enterprise Linux)和Remi Repository。

安装EPEL:

$ sudo yum install epel-release -y

安装Remi repository:

$ sudo yum install -y https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm

启用Remi仓库:

$ sudo yum-config-manager --enable remi
  1. 安装Redis 7:
    使用YUM命令从Remi仓库中下载并安装Redis 7:
$ sudo yum install redis -y

配置文件默认位置在/etc/redis.conf。

  1. 启动Redis服务:
    安装完成后,启动Redis服务:
$ sudo systemctl start redis
  1. 设置Redis服务为开机启动:
    使用以下命令确保Redis在系统重启时自动启动:
$ sudo systemctl enable redis
  1. 验证Redis安装:
    使用以下命令检查Redis服务的状态:
$ sudo systemctl status redis

如果Redis服务正在运行,应能看到“active (running)”的状态。

redis.conf常用配置

开启守护进程模式:

daemonize yes

daemonize设置yes或者no区别:

  • yes:代表开启守护进程模式,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中。

  • no:启动将进入redis的命令行界面,exit或者关闭连接工具(putty,xshell等)都会导致redis进程退出。

bind配置项用于指定Redis服务器监听的IP地址,默认是使用的本地回环地址,也就是本地才能连接,可以注释掉这一行或者改为bind 0.0.0.0放开所有的外部网络访问。

#bind 127.0.0.1

bind 0.0.0.0

protected-mode用来限制对Redis服务器的访问。

protected-mode yes

外部想要访问redis服务,除了需要修改bind的IP地址,还需要满足以下两个条件之一:

  • protected-mode设置为no,将允许Redis接受来自任何网络接口的连接请求,只要这些接口被Redis监听。
  • protected-mode设置为yes,同时设置密码(requirepass)

http://www.kler.cn/a/488014.html

相关文章:

  • 搭建docker私有化仓库Harbor
  • YOLOv5改进 | CARAFE提高精度的上采样方法
  • 学习记录:C/C++ 中的续行符
  • 运放输入偏置电流详解
  • 创建Java项目,并添加MyBatis包和驱动包
  • PostgreSQL学习笔记(二):PostgreSQL基本操作
  • 网站自动签到
  • 【MySQL基础篇】十四、MySQL的C语言API使用
  • #渗透测试#网络安全# 一文了解什么是跨域CROS!!!
  • (纯小白教程)Liunx系统安装Anaconda
  • LLM - Llama 3 的 Pre/Post Training 阶段 Loss 以及 logits 和 logps 概念
  • 《零基础Go语言算法实战》【题目 2-2】使用函数交换两个变量的值
  • Python网络爬虫:从入门到实战
  • 《Spring Framework实战》15:4.1.4.6.方法注入
  • C#里使用libxl里演示输出日期和读取日期数据的例子
  • 前端工具汇总
  • 使用virtualenv创建虚拟环境
  • JavaScript学习记录13
  • Elasticsearch学习(2) :DSL和RestClient实现搜索文档
  • Scala语言的面向对象编程
  • 解析若依 `R.java` 类——ruoyi-common-core
  • 【每日学点鸿蒙知识】so 库瘦身、IDE 内存配置、判断前后台呢
  • selenium+pyqt5自动化工具总结
  • Appium版本升级,需要注意哪些点:使用UiAutomator2Options传递capabilities
  • IP属地是什么?如何关闭或隐藏IP属地
  • 为深度学习引入张量