openEuler 上安装与部署 Redis 的完整技术教程

在 openEuler 上安装与部署 Redis 的完整技术教程

适用系统 :openEuler 20.03 LTS / 21.03 / 22.03-LTS 及以上版本
Redis 版本 :7.x(以源码编译方式安装)
适用场景:单机部署、开发测试或生产环境基础配置


📌 一、前言

openEuler 是由华为发起并开源的 Linux 发行版,广泛应用于服务器、云计算和边缘计算场景。Redis 是高性能的内存键值数据库,常用于缓存、会话存储、消息队列等。

本文将详细介绍如何在 openEuler 系统上从源码编译安装 Redis,并完成基本的安全配置与开机自启动设置。


🔧 二、准备工作

1. 系统环境检查

bash 复制代码
# 查看操作系统版本
cat /etc/os-release

# 示例输出:
# NAME="openEuler"
# VERSION="22.03 (LTS-SP1)"

确保系统已联网,且具备 rootsudo 权限。

2. 安装必要依赖工具

bash 复制代码
sudo dnf update -y
sudo dnf install -y gcc make wget tar net-tools vim git

💡 注意:openEuler 使用 dnf 包管理器(类似 CentOS 的 yum)


📦 三、下载并编译安装 Redis

1. 下载 Redis 源码包(以 v7.2.5 为例)

bash 复制代码
cd /tmp
wget https://download.redis.io/releases/redis-7.2.5.tar.gz
tar -zxvf redis-7.2.5.tar.gz
mv redis-7.2.5 /usr/local/redis-src

2. 编译 Redis

bash 复制代码
cd /usr/local/redis-src
make

⏱️ 编译时间约 1~3 分钟,取决于主机性能

验证是否编译成功:
bash 复制代码
src/redis-server --version
# 输出示例:Redis server v=7.2.5 ...

3. 安装到系统目录(默认安装到 /usr/local/bin)

bash 复制代码
sudo make install

这会将以下可执行文件复制到 /usr/local/bin

  • redis-server:Redis 服务端
  • redis-cli:命令行客户端
  • redis-benchmark:性能测试工具
  • redis-check-aof, redis-check-rdb:数据恢复工具

⚙️ 四、配置 Redis 服务

1. 创建配置文件目录和工作目录

bash 复制代码
sudo mkdir -p /etc/redis
sudo mkdir -p /var/lib/redis
sudo mkdir -p /var/log/redis

2. 复制默认配置模板

bash 复制代码
sudo cp /usr/local/redis-src/redis.conf /etc/redis/redis.conf
sudo chown -R root:root /etc/redis/redis.conf

3. 修改关键配置项

编辑配置文件:

bash 复制代码
sudo vim /etc/redis/redis.conf

修改以下参数(建议搜索定位):

配置项 推荐值 说明
bind 127.0.0.1 bind 0.0.0.0 允许远程连接(生产环境应绑定内网IP)
protected-mode yes protected-mode no 关闭保护模式(配合密码使用更安全)
port 6379 保持默认 可根据需要更改
daemonize no daemonize yes 后台运行
pidfile /var/run/redis_6379.pid /run/redis_6379.pid openEuler 中推荐路径
loglevel notice loglevel warning 减少日志输出
logfile "" logfile "/var/log/redis/redis-server.log" 指定日志文件
dir /usr/local/bin dir /var/lib/redis 数据持久化目录
requirepass yourpassword → 取消注释并设置强密码 设置访问密码(如:requirepass MyP@ssw0rd!2025

✅ 示例片段(重要部分):

conf 复制代码
bind 0.0.0.0
port 6379
daemonize yes
pidfile /run/redis_6379.pid
logfile /var/log/redis/redis-server.log
dir /var/lib/redis
requirepass YourStrongPasswordHere!
maxmemory 512mb
maxmemory-policy allkeys-lru

🔒 生产建议:不要开放公网访问,使用防火墙限制 IP。


🔌 五、创建 systemd 服务(开机自启)

1. 创建服务文件

bash 复制代码
sudo vim /etc/systemd/system/redis.service

写入以下内容:

ini 复制代码
[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=root
Group=root
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli -a YourStrongPasswordHere! shutdown
Restart=always
LimitNOFILE=10000

[Install]
WantedBy=multi-user.target

⚠️ 注意替换 YourStrongPasswordHere! 为你的实际密码

2. 重载 systemd 并启用服务

bash 复制代码
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable redis
sudo systemctl start redis

3. 检查服务状态

bash 复制代码
sudo systemctl status redis

正常输出包含:

复制代码
active (running)
Main PID: xxxxx (redis-server)

🔍 六、验证 Redis 是否正常运行

1. 检查监听端口

bash 复制代码
ss -tulnp | grep 6379
# 应看到 redis-server 监听中

2. 使用 redis-cli 连接测试

bash 复制代码
redis-cli -h 127.0.0.1 -p 6379 -a YourStrongPasswordHere!

进入后执行:

bash 复制代码
ping
# 返回:PONG

set test "hello openEuler"
get test
# 返回:"hello openEuler"

exit

🔐 七、安全加固建议(生产环境必做)

建议 操作
❌ 禁止使用默认密码 必须设置复杂密码
✅ 限制 bind 地址 如仅允许内网访问:bind 192.168.1.100
✅ 配置防火墙 仅允许特定 IP 访问 6379 端口
bash 复制代码
# 示例:使用 firewalld 开放指定 IP
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="6379" accept'
sudo firewall-cmd --reload
建议 操作
✅ 禁用危险命令 FLUSHDB, CONFIG 等(通过 rename-command)

redis.conf 中添加:

conf 复制代码
rename-command FLUSHDB my_flush_db_123
rename-command CONFIG ""

🔄 八、常用管理命令汇总

bash 复制代码
# 启动
sudo systemctl start redis

# 停止
sudo systemctl stop redis

# 重启
sudo systemctl restart redis

# 查看状态
sudo systemctl status redis

# 查看日志
tail -f /var/log/redis/redis-server.log

# 客户端连接
redis-cli -a 'YourPassword' ping

💾 九、持久化配置建议

Redis 支持两种持久化方式:

1. RDB(快照,默认开启)

conf 复制代码
save 900 1
save 300 10
save 60 10000

2. AOF(追加日志,更安全)

conf 复制代码
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec

✅ 建议生产环境同时启用 RDB + AOF


🧪 十、性能测试(可选)

bash 复制代码
redis-benchmark -h 127.0.0.1 -p 6379 -a YourPassword -n 10000 -c 50

查看每秒处理请求数(QPS),评估性能表现。


📝 总结

步骤 内容
✅ 第一步 安装依赖并下载 Redis 源码
✅ 第二步 编译安装 make && make install
✅ 第三步 配置 redis.conf 关键参数
✅ 第四步 创建 systemd 服务实现开机自启
✅ 第五步 设置密码、防火墙、禁用高危命令

相关推荐
二营长12 小时前
线上系统mysql数据库突然sql执行不出来记录
数据库·sql·mysql
翔云 OCR API2 小时前
企业工商信息查验API-快速核验企业信息-营业执照文字识别接口
前端·数据库·人工智能·python·mysql
数据库学啊2 小时前
性价比高的车联网时序数据库哪个靠谱
数据库·时序数据库
关于不上作者榜就原神启动那件事3 小时前
Redis学习文档
数据库·redis·学习
我科绝伦(Huanhuan Zhou)3 小时前
Oracle数据库内存管理实操指南:PGA与SGA优化实战
数据库·oracle
哈哈老师啊3 小时前
Springboot基于双减政策的家校互动管理系统8e613(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
进击的丸子3 小时前
人脸识别项目如何在Spring Boot项目中如何建立数据库和管理
数据库·后端·mysql
IvorySQL3 小时前
PostgreSQL 19:超高速聚合的全新突破
数据库·人工智能·postgresql·开源
电商API_180079052473 小时前
Python爬虫从入门到实战:核心技术与合规指南
大数据·数据库·爬虫