🎬 HoRain 云小助手:个人主页

⛺️生活的理想,就是为了理想的生活!


⛳️ 推荐

前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。

目录

⛳️ 推荐

一、环境准备

1. 安装编译工具和依赖库

2. 创建专用用户(安全隔离)

二、源码编译安装 Redis

1. 下载最新稳定版源码(以 Redis 7.0 为例)

2. 编译并安装到指定目录

3. 创建必要目录并设置权限

三、配置 Redis 服务

1. 复制配置文件模板

2. 修改配置文件 /etc/redis/redis.conf

3. 创建 Systemd 服务文件

4. 启动服务并设置开机自启

四、防火墙和SELinux配置

1. 放行 Redis 端口

2. 处理 SELinux 限制(可选)

五、验证安装

1. 检查服务状态

2. 命令行测试

六、性能优化建议

1. 内核参数调整

2. 内存分配策略

七、故障排查

1. 查看日志

2. 测试配置文件

3. 常见错误解决

八、卸载 Redis



一、环境准备

1. 安装编译工具和依赖库
sudo dnf update -y
sudo dnf groupinstall "Development Tools" -y
sudo dnf install -y tcl openssl-devel systemd-devel
2. 创建专用用户(安全隔离)
sudo useradd -r -M -s /sbin/nologin redis

二、源码编译安装 Redis

1. 下载最新稳定版源码(以 Redis 7.0 为例)
wget https://download.redis.io/releases/redis-7.0.14.tar.gz
tar xzf redis-7.0.14.tar.gz
cd redis-7.0.14
2. 编译并安装到指定目录
# 启用Jemalloc内存分配器(性能优化)
make BUILD_WITH_SYSTEMD=yes USE_SYSTEMD=yes MALLOC=libc -j$(nproc)
sudo make PREFIX=/usr/local/redis install
3. 创建必要目录并设置权限
sudo mkdir -p /etc/redis /var/lib/redis /var/log/redis
sudo chown -R redis:redis /var/lib/redis /var/log/redis

三、配置 Redis 服务

1. 复制配置文件模板
sudo cp redis.conf /etc/redis/redis.conf
2. 修改配置文件 /etc/redis/redis.conf
# 基础配置
bind 0.0.0.0            # 允许远程访问(生产环境建议限制IP)
port 6379
daemonize no            # 由systemd管理时设为no
supervised systemd      # 启用systemd监控
pidfile /var/run/redis_6379.pid
logfile /var/log/redis/redis.log
dir /var/lib/redis      # 数据存储路径

# 安全增强
requirepass YourStrongPassword  # 设置访问密码
protected-mode yes              # 开启保护模式

# 持久化策略
save 900 1            # 15分钟内有1次写操作则保存
save 300 10           # 5分钟内有10次写操作则保存
appendonly yes        # 启用AOF持久化
appendfsync everysec  # 每秒同步一次
3. 创建 Systemd 服务文件
sudo nano /etc/systemd/system/redis.service

添加以下内容:

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=redis
Group=redis
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli shutdown
Restart=always
Type=notify

[Install]
WantedBy=multi-user.target
4. 启动服务并设置开机自启
sudo systemctl daemon-reload
sudo systemctl start redis
sudo systemctl enable redis

四、防火墙和SELinux配置

1. 放行 Redis 端口
sudo firewall-cmd --permanent --add-port=6379/tcp
sudo firewall-cmd --reload
2. 处理 SELinux 限制(可选)
# 临时禁用(重启失效)
sudo setenforce 0

# 永久禁用(需重启)
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

五、验证安装

1. 检查服务状态
sudo systemctl status redis  # 应显示"active (running)"
2. 命令行测试
/usr/local/redis/bin/redis-cli -a YourStrongPassword
127.0.0.1:6379> SET test "Hello CentOS"
127.0.0.1:6379> GET test

六、性能优化建议

1. 内核参数调整
# 修改 /etc/sysctl.conf
echo "vm.overcommit_memory=1" | sudo tee -a /etc/sysctl.conf
echo "net.core.somaxconn=65535" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
2. 内存分配策略
  • Jemalloc(默认已启用):适合高并发场景
  • libc:内存占用更稳定(编译时通过 MALLOC=libc 指定)

七、故障排查

1. 查看日志
sudo tail -f /var/log/redis/redis.log
2. 测试配置文件
/usr/local/redis/bin/redis-server /etc/redis/redis.conf --test
3. 常见错误解决
  • Failed to start Redis service:
    检查 /var/log/redis/redis.log 中的错误信息,常见原因为目录权限不足或端口冲突。
  • NOAUTH Authentication required:
    确保客户端连接时使用 -a YourPassword 或通过 AUTH 命令认证。

八、卸载 Redis

sudo systemctl stop redis
sudo rm -rf /usr/local/redis /etc/redis /var/lib/redis /var/log/redis
sudo userdel redis
sudo firewall-cmd --remove-port=6379/tcp --permanent
sudo firewall-cmd --reload

通过以上步骤,您已在 CentOS 8 Stream 系统上完成 Redis 的编译安装与基础优化。生产环境中建议结合主从复制、持久化策略和监控工具(如 RedisInsight)进一步提升可靠性和可维护性。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

更多推荐