运维打铁:Centos 7使用yum安装 Redis 5

文章目录

    • 一、安装前信息说明
    • [二、安装 Redis](#二、安装 Redis)
    • [三、创建 Redis 相关数据目录](#三、创建 Redis 相关数据目录)
    • [四、启动 Redis 服务](#四、启动 Redis 服务)
    • [五、修改 Redis 数据目录和端口](#五、修改 Redis 数据目录和端口)
      • [1. 修改 Redis 配置文件 `/etc/redis.conf`](#1. 修改 Redis 配置文件 /etc/redis.conf)
      • [2. 拷贝数据到数据目录并授权](#2. 拷贝数据到数据目录并授权)
      • [3. 重启 Redis 并连接访问](#3. 重启 Redis 并连接访问)
    • 六、常见问题及解决办法
      • [1. Redis 安装失败](#1. Redis 安装失败)
      • [2. Redis 服务无法启动](#2. Redis 服务无法启动)
      • [3. 无法连接到 Redis 服务器](#3. 无法连接到 Redis 服务器)
      • [4. 数据文件拷贝失败](#4. 数据文件拷贝失败)

一、安装前信息说明

在安装 Redis 5 之前,先明确以下关键信息:

端口(port) 数据路径(datapath) 日志路径(logpath)
30090 /opt/redis/data /opt/redis/logs/redis.log

二、安装 Redis

可以通过两种方式安装 Redis,选择其中一种即可。

方式一:使用 Remi 仓库安装

bash 复制代码
yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum --enablerepo=remi install redis

方式二:使用 EPEL 仓库安装

bash 复制代码
yum install epel-release
yum install redis

安装完成后,可检查 Redis 服务状态和客户端版本:

bash 复制代码
systemctl status redis
redis-cli --version

三、创建 Redis 相关数据目录

创建 Redis 数据目录和日志目录,用于存储数据和日志文件。

bash 复制代码
mkdir -p /opt/redis/data
mkdir -p /opt/redis/logs

四、启动 Redis 服务

使用 systemctl 命令启动 Redis 服务。

bash 复制代码
systemctl start redis

五、修改 Redis 数据目录和端口

1. 修改 Redis 配置文件 /etc/redis.conf

编辑 Redis 配置文件,设置监听地址、端口、日志目录、数据目录和连接密码。

ini 复制代码
# 监听地址,将 serverip 替换为实际的服务器 IP 地址
bind serverip
# 绑定端口
port 30090
# 日志目录
logfile /opt/redis/logs/redis.log
# 数据目录
dir /opt/redis/data
# 连接密码,将 password 替换为实际的密码
requirepass password

2. 拷贝数据到数据目录并授权

在修改配置文件后,需要停止 Redis 服务,将原数据文件拷贝到新的数据目录,并设置正确的文件权限。

bash 复制代码
systemctl stop redis
cp /var/lib/redis/dump.rdb /opt/redis/data/
chown -R redis:redis /opt/redis/*

3. 重启 Redis 并连接访问

重启 Redis 服务,使其加载新的配置文件,然后使用 redis-cli 连接到 Redis 服务器。

bash 复制代码
systemctl restart redis
# 将 serverip 替换为实际的服务器 IP 地址
redis-cli -h serverip -p 30090

六、常见问题及解决办法

1. Redis 安装失败

  • 可能原因:网络问题、仓库配置错误等。
  • 解决办法
    • 检查网络连接是否正常,确保可以访问相关的软件仓库。
    • 若使用 Remi 仓库安装失败,可尝试使用 EPEL 仓库安装;若使用 EPEL 仓库安装失败,可检查 EPEL 仓库是否正确配置。

2. Redis 服务无法启动

  • 可能原因:配置文件错误、端口被占用、文件权限不足等。
  • 解决办法
    • 检查 /etc/redis.conf 配置文件是否存在语法错误,特别是 bindportlogfiledir 等参数的设置。
    • 使用 netstat -tlnp | grep 30090 检查端口是否被其他程序占用,若被占用,可修改 /etc/redis.conf 中的 port 配置。
    • 确保 /opt/redis 目录及其子目录的所有权属于 redis 用户和组,可使用 chown -R redis:redis /opt/redis/* 命令进行修改。

3. 无法连接到 Redis 服务器

  • 可能原因 :防火墙未开放端口、配置文件中的 bind 地址设置错误、密码错误等。
  • 解决办法
    • 开放防火墙的 30090 端口,例如使用 firewall-cmd --zone=public --add-port=30090/tcp --permanent 命令,然后使用 firewall-cmd --reload 使配置生效。
    • 检查 /etc/redis.conf 中的 bind 地址是否设置正确,确保可以从客户端访问该地址。
    • 检查连接时输入的密码是否与 /etc/redis.conf 中设置的 requirepass 一致。

4. 数据文件拷贝失败

  • 可能原因:原数据文件不存在、目标目录权限不足等。
  • 解决办法
    • 检查 /var/lib/redis/dump.rdb 文件是否存在,若不存在,可能是 Redis 未正常生成数据文件,可尝试重新启动 Redis 服务。
    • 确保 /opt/redis/data 目录有足够的权限进行文件写入操作,可使用 chown -R redis:redis /opt/redis/* 命令修改目录权限。
相关推荐
小猿姐4 小时前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
SkyWalking中文站16 小时前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
SkyWalking中文站2 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
雪梨酱QAQ2 天前
Kubeneters HA Cluster部署
运维
江华森2 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森2 天前
Matplotlib 数据绘图基础入门
运维
江华森2 天前
NumPy 数值计算基础入门
运维
用户3074596982073 天前
Redis 延时队列详解
redis
烤代码的吐司君3 天前
Redis 数据结构 ZSet, BIT, HyperLogLog,Geo 空间数据
redis·后端
leeyi5 天前
Checkpoint 机制:Agent 怎么在断电后接着跑
redis·aigc·agent