运维打铁: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/* 命令修改目录权限。
相关推荐
KIDAKN3 分钟前
Redis 分布式锁
数据库·redis·分布式
厦门辰迈智慧科技有限公司11 分钟前
水闸自动化监控系统解决方案
运维·服务器·物联网·安全·自动化·监测
努力学习的小廉1 小时前
深入了解linux系统—— 日志
linux·运维·服务器
MilesShi4 小时前
从 scheduler_tick 到上下文切换:深入解析 Linux 内核的 TIF_NEED_RESCHED 标志设置流程
linux·运维·单片机
yenggd6 小时前
centos系统apache支持php配置
centos·php·apache
方渐鸿7 小时前
【2024】k8s集群 图文详细 部署安装使用(两万字)
java·运维·容器·kubernetes·k8s·运维开发·持续部署
我爱云计算7 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes
明明跟你说过7 小时前
【k8s】资源限制管理:Namespace、Deployment与Pod的实践
运维·docker·云原生·容器·kubernetes·k8s
MAGICIAN...9 小时前
【Redis】--持久化机制
数据库·redis·缓存
我真的是大笨蛋9 小时前
JVM调优总结
java·jvm·数据库·redis·缓存·性能优化·系统架构