redis 7.4安装笔记
Redis 服务器安装指南(使用 tar.gz 安装包)
下面是通过下载 Redis 安装包(tar.gz 格式)在 Linux 服务器上进行安装的详细步骤:
安装前准备
1. 安装编译依赖
bash
# Ubuntu/Debiansudo apt updatesudo apt install build-essential tcl libssl-dev -y# CentOS/RHELsudo yum groupinstall \"Development Tools\" -ysudo yum install tcl openssl-devel -y
2. 下载 Redis 安装包
bash
# 获取最新稳定版 Redis(请替换为最新版本)REDIS_VERSION=\"7.2.4\"wget https://download.redis.io/releases/redis-${REDIS_VERSION}.tar.gz# 验证文件完整性echo \"e2a9c1608682a1fb7d223c04840345c6c3c666af\" redis-${REDIS_VERSION}.tar.gz.sha1sha1sum redis-${REDIS_VERSION}.tar.gz
安装步骤
1. 解压安装包
bash
tar xzf redis-${REDIS_VERSION}.tar.gzcd redis-${REDIS_VERSION}
2. 编译安装
bash
# 编译 Redismake -j$(nproc)# 测试编译结果(可选但推荐)make test# 安装到系统sudo make install
3. 创建 Redis 系统用户
bash
sudo adduser --system --group --no-create-home redissudo mkdir /var/lib/redissudo chown redis:redis /var/lib/redissudo chmod 770 /var/lib/redis
4. 配置 Redis
bash
# 创建配置文件目录sudo mkdir /etc/redissudo cp redis.conf /etc/redis/# 编辑配置文件sudo nano /etc/redis/redis.conf
关键配置修改:
conf
# 绑定内网 IP(安全必须)bind 127.0.0.1 # 或服务器内网IP# 设置密码(安全必须)requirepass your_strong_password# 启用守护进程模式daemonize yes# 数据目录dir /var/lib/redis# 日志文件logfile /var/log/redis/redis-server.log# 最大内存限制(根据服务器内存设置)maxmemory 2gbmaxmemory-policy allkeys-lru# 禁用危险命令(安全加固)rename-command FLUSHDB \"\"rename-command FLUSHALL \"\"rename-command CONFIG \"\"
5. 创建 Systemd 服务
bash
sudo nano /etc/systemd/system/redis.service
服务文件内容:
ini
[Unit]Description=Redis In-Memory Data StoreAfter=network.target[Service]User=redisGroup=redisExecStart=/usr/local/bin/redis-server /etc/redis/redis.confExecStop=/usr/local/bin/redis-cli shutdownRestart=alwaysRestartSec=5Type=forking# 安全加固PrivateTmp=yesNoNewPrivileges=yesMemoryDenyWriteExecute=yesProtectSystem=fullReadWritePaths=/var/lib/redis[Install]WantedBy=multi-user.target
6. 创建日志目录
bash
sudo mkdir /var/log/redissudo chown redis:redis /var/log/redis
7. 启动 Redis 服务
bash
# 重新加载 systemdsudo systemctl daemon-reload# 启动 Redissudo systemctl start redis# 设置开机自启sudo systemctl enable redis# 检查状态sudo systemctl status redis
验证安装
bash
# 测试连接redis-cli -h 127.0.0.1 -a your_strong_password ping# 应返回: PONG# 检查版本redis-cli -h 127.0.0.1 -a your_strong_password info server | grep redis_version
防火墙配置
bash
# 开放 Redis 端口(默认 6379)# Ubuntu/Debiansudo ufw allow 6379/tcp# CentOS/RHELsudo firewall-cmd --permanent --add-port=6379/tcpsudo firewall-cmd --reload
安全加固建议
-
网络隔离:只允许内网访问 Redis 服务
-
启用 TLS(Redis 6+):
bash
# 生成证书openssl genrsa -out /etc/redis/redis.key 2048openssl req -x509 -new -key /etc/redis/redis.key -out /etc/redis/redis.crt -days 365# 配置 redis.conftls-port 6379tls-cert-file /etc/redis/redis.crttls-key-file /etc/redis/redis.key
-
定期备份:
bash
# 创建备份脚本echo \'redis-cli -a your_password save && cp /var/lib/redis/dump.rdb /backup/redis-$(date +%F).rdb\' | sudo tee /usr/local/bin/redis-backupsudo chmod +x /usr/local/bin/redis-backup# 添加到 cron(crontab -l ; echo \"0 2 * * * /usr/local/bin/redis-backup\") | crontab -
-
监控设置:
bash
# 启用监控echo \"CONFIG SET protected-mode no\" | redis-cli -a your_password
卸载 Redis
bash
# 停止服务sudo systemctl stop redissudo systemctl disable redis# 删除服务文件sudo rm /etc/systemd/system/redis.service# 删除安装文件sudo rm /usr/local/bin/redis-*# 删除配置和数据sudo rm -rf /etc/redissudo rm -rf /var/lib/redissudo rm -rf /var/log/redis# 删除用户sudo deluser redis
常见问题解决
Q: 连接时出现 (error) NOAUTH Authentication required
A: 确保在连接时使用了正确的密码:redis-cli -a your_password
Q: 启动时出现 Failed to start Redis service
A: 检查日志文件:sudo journalctl -u redis.service -b
Q: 内存使用过高
A: 在配置文件中调整内存策略:
conf
maxmemory 4gb # 根据服务器内存设置maxmemory-policy allkeys-lru
此安装方法适用于生产环境,提供了必要的安全配置和服务管理。安装完成后,建议定期更新 Redis 版本以获取安全补丁和新功能。
加Q group请备注(进后请告知):来自CSDN。
专属q group:868373192,277356808