【redis】centos7下安装redis7

ops/2025/1/13 3:35:31/

在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)”的状态。

redisconf_168">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.1bind 0.0.0.0

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

protected-mode yes

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

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

http://www.ppmy.cn/ops/149630.html

相关文章

Jenkins持续集成与交付安装配置

Jenkins 是一款开源的持续集成(CI)和持续交付(CD)工具,它主要用于自动化软件的构建、测试和部署流程。为项目持续集成与交付功能强大的应用。下面我们来介绍下它的安装与配置。 环境准备 更新系统组件(这…

Docker 容器管理

容器是一个 image 的实例,它是我们用 image 文件生成出来的具体应用。 Nginx 服务器 我们在 pull 一个 Nginx image 到本地电脑,用它举例在介绍一些常用的容器管理命令。 // 获取 nginx 镜像 sudo docker pull nginx// 运行 nginx 镜像 sudo docker r…

在 Ubuntu 22.04 上从 Wayland 切换到 X11的详细步骤

在 Ubuntu 22.04 上从 Wayland 切换到 X11,步骤其实很简单,主要是在登录界面进行选择。以下是详细的步骤: 步骤 1:退出当前会话 首先,点击屏幕右上角的用户菜单,选择 注销 或 退出,以退出当前…

Flutter:吸顶效果

在分页中,实现tab吸顶。 TDNavBar的screenAdaptation: true, 开启屏幕适配。 该属性已自动对不同手机状态栏高度进行适配。我们只需关注如何实现吸顶。 view import package:ducafe_ui_core/ducafe_ui_core.dart; import package:flutter/material.dart; import p…

QT + Opencv 实现灰度模板匹配

QT Opencv 实现灰度模板匹配 实现思路 1.模板创建代码思路 1 初始化和准备: 使用 cv::buildPyramid 函数构建图像金字塔。图像金字塔是一种多分辨率表示,每个层级的图像分辨率逐步降低。 调整 m_TemplData 的大小以匹配图像金字塔的层级数。 计算每…

Monaco Editor 系列报错修复:webpack-cli已经下载了但是还报错

今天想把项目push到gitee上,复制、拖动改动了好多,导致项目起不来了,从头安装依赖,但是出现了一个奇怪的报错。众所周知,我们启动项目是在 website 目录下,安装依赖也是在这个目录下,我webpack-…

SVM赛道概览:MoveVM落地,SVM能走多远

Sonic SVM、SOON、Eclipse全方位解读。 作者:jk;编辑:郝方舟 出品 | Odaily星球日报(ID:o-daily) 随着高性能与可扩展性的需求愈发迫切,Solana Virtual Machine(SVM)正逐…

老榕树的java专题:探索 Nacos:微服务架构中的配置与服务发现利器

在当今微服务架构盛行的时代,如何高效地管理配置信息以及实现服务之间的发现与协调成为了开发者们重点关注的问题。而 Nacos(Naming and Configuration Service)的出现,就像是为微服务搭建起了一座坚实的桥梁,让这些复…