运维打铁: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/* 命令修改目录权限。
相关推荐
爬山算法14 小时前
Redis(66)Redis如何实现分布式锁?
数据库·redis·分布式
游戏开发爱好者814 小时前
FTP 抓包分析实战,命令、被动主动模式要点、FTPS 与 SFTP 区别及真机取证流程
运维·服务器·网络·ios·小程序·uni-app·iphone
默 语15 小时前
AI驱动软件测试全流程自动化:从理论到实践的深度探索
运维·人工智能·驱动开发·ai·自动化·ai技术·测试全流程
恋红尘15 小时前
Redis面试八股
数据库·redis·面试
望获linux16 小时前
【实时Linux实战系列】实时 Linux 的自动化基准测试框架
java·大数据·linux·运维·网络·elasticsearch·搜索引擎
ajax_beijing16 小时前
k8s的ReplicaSet介绍
运维·云原生
Lacrimosa&L17 小时前
操作系统概述
运维
Guheyunyi17 小时前
风险感知中枢:监测预警系统的架构与核心
大数据·运维·安全·重构·架构·自动化
东城绝神18 小时前
《Linux运维总结:基于X86_64+ARM64架构CPU使用docker-compose一键离线部署consul 1.21.5容器版集群》
linux·运维·docker·架构·consul