在 CentOS 上设置(安装并配置)Redis,下面给你一套常用、稳定、适合生产环境的操作步骤(以 CentOS 7 / 8 为例,Redis 6.x)。
CentOS 7 默认仓库版本较旧,CentOS 8 稍新一些
# CentOS 7
yum install -y epel-release
yum install -y redis
# CentOS 8
dnf install -y redis
查看版本:
redis-server --version
# 安装依赖
yum install -y gcc make
# 下载 Redis
cd /usr/local/src
wget https://download.redis.io/releases/redis-6.2.14.tar.gz
tar -zxvf redis-6.2.14.tar.gz
cd redis-6.2.14
# 编译
make
make install
mkdir -p /etc/redis
cp /usr/local/src/redis-6.2.14/redis.conf /etc/redis/
编辑配置:
vim /etc/redis/redis.conf
# 监听地址(生产环境建议内网IP或 0.0.0.0)
bind 0.0.0.0
# 后台运行
daemonize yes
# 日志文件
logfile "/var/log/redis/redis.log"
# 数据目录
dir /var/lib/redis
# 设置密码(强烈建议)
requirepass your_password
# 最大内存(示例 1G)
maxmemory 1gb
maxmemory-policy allkeys-lru
mkdir -p /var/lib/redis
mkdir -p /var/log/redis
useradd -r -s /sbin/nologin redis
chown -R redis:redis /var/lib/redis
chown -R redis:redis /var/log/redis
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 /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start redis
systemctl enable redis
systemctl status redis
redis-cli
如果设置了密码:
AUTH your_password
测试:
set test 123
get test
如果其他服务器需要访问 Redis:
firewall-cmd --add-port=6379/tcp --permanent
firewall-cmd --reload
⚠️ 不建议直接暴露 6379 到公网
requirepassbind 地址FLUSHALL / FLUSHDBjournalctl -u redis -xe
netstat -tunlp | grep 6379
如果你告诉我:
我可以给你更精确的配置方案 ✅