Ubuntu 24.04 安装配置 Redis 7.0 开机自启

下载源码

复制代码
wget https://download.redis.io/releases/redis-7.0.12.tar.gz

安装依赖 & 准备环境

复制代码
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential tcl curl

解压

复制代码
tar xzf redis-7.0.12.tar.gz

编译安装

复制代码
cd redis-7.0.12
make -j$(nproc)               # 使用全部 CPU 核心加速编译
sudo make install             # 默认安装到 /usr/local/bin

修改配置文件

复制代码
sudo mkdir -p /usr/local/redis
sudo cp redis.conf /usr/local/redis/redis.conf
vim /usr/local/redis/redis.conf

以下配置项逐个进行修改

复制代码
bind 0.0.0.0                                   # 不限制 IP,可以远程连接
daemonize no                                   # 改为 no(由 systemd 管理)
supervised systemd                             # 改为 systemd
dir /usr/local/redis/working                   # 修改数据存储路径
logfile /usr/local/redis/log/redis-server.log  # 设置日志路径
requirepass xxxxyyyy                           # 设置密码

# 启用混合持久化
appendonly yes            # 启用 AOF
appendfsync everysec      # 每秒同步一次(安全性和性能的平衡点)
aof-use-rdb-preamble yes  # 开启混合持久化

# AOF 重写策略
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

# 设置 AOF 目录
appenddirname "aof-files"

创建 Systemd 服务文件,实现自启动管理

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

完整拷贝以下配置

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

[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /usr/local/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
RestartSec=3
Type=notify
TimeoutStopSec=10
SyslogIdentifier=redis

# 声明 Redis 需要访问的路径
ReadWritePaths=/usr/local/redis/working /usr/local/redis/log
LogsDirectory=redis

# 资源限制 (可选但推荐)
LimitNOFILE=65536
OOMScoreAdjust=-200

[Install]
WantedBy=multi-user.target

创建必要目录

复制代码
sudo mkdir -p /usr/local/redis/working              # 创建 Redis 工作目录
sudo mkdir -p /usr/local/redis/log                  # 创建 Redis 日志目录
sudo mkdir -p /usr/local/redis/working/aof-files    # 创建上面配置的 AOF 目录

创建 Redis 专用用户和目录

复制代码
# 创建专用用户和组
sudo adduser --system --group --no-create-home redis

# 设置数据目录权限
sudo chown -R redis:redis /usr/local/redis/working
sudo chown -R redis:redis /usr/local/redis/log

# 设置合适的权限 (所有者:读+写+执行、组用户:读+执行、其他用户:无权限)
sudo chmod 750 /usr/local/redis/working
sudo chmod 750 /usr/local/redis/log

# 设置配置文件权限
sudo chown redis:redis /usr/local/redis/redis.conf

启动 Redis 并设置开机自启

复制代码
# 重载 systemd
sudo systemctl daemon-reload

# 启动服务
sudo systemctl start redis

# 停止服务
sudo systemctl stop redis

# 设置开机自启
sudo systemctl enable redis

# 检查状态
sudo systemctl status redis

检查数据目录,验证持久化配置

复制代码
sudo ls -lh /usr/local/redis/working    # 应看到 aof-files 文件夹和 dump.rdb 文件

安装完成。


相关推荐
雨中飘荡的记忆2 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
曲幽11 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux