本文档风哥主要介绍Redis的官方安装与初始化配置过程,包括Redis的安装方式、版本选择、系统要求、安装步骤、初始化配置、服务管理以及常见问题解决等内容,风哥教程参考Redis官方文档Installation Guides、Quick starts等内容编写,适合DBA人员和开发人员在生产环境中使用。
Part01-基础概念与理论知识
1.1 Redis安装方式
Redis支持多种安装方式:
- 源码编译安装:从官方网站下载源码,编译安装
- 包管理器安装:使用yum、apt等包管理器安装
- 容器安装:使用Docker容器安装
- 云服务:使用Redis Cloud等云服务
1.2 Redis版本选择
Redis版本选择建议:
- 生产环境:选择稳定版本,如7.0.x或6.2.x
- 开发环境:可以使用最新版本
- 版本兼容性:注意应用程序对Redis版本的兼容性
1.3 系统要求
Redis的系统要求:
– 操作系统:Linux/Unix、Windows(建议Linux)
– CPU:至少2核,推荐4核+
– 内存:根据数据量,推荐8GB+
– 存储:SSD存储,推荐50GB+
– 网络:千兆网卡
– 依赖:gcc、make等编译工具
更多视频教程www.fgedu.net.cn
Part02-生产环境规划与建议
2.1 安装规划
生产环境安装规划:
- 安装方式:推荐源码编译安装,便于控制版本和配置
- 部署模式:根据业务需求选择单机、主从、哨兵或集群模式
- 硬件资源:根据数据量和并发需求规划硬件资源
- 网络规划:确保网络带宽和延迟满足需求
2.2 目录结构规划
/redis/ # 根目录
├── app/ # 安装目录
│ ├── bin/ # 可执行文件
│ └── redis.conf # 配置文件
├── fgdata/ # 数据目录
├── log/ # 日志目录
└── backup/ # 备份目录
2.3 系统优化建议
# 1. 关闭透明大页
$ echo never > /sys/kernel/mm/transparent_hugepage/enabled
$ echo never > /sys/kernel/mm/transparent_hugepage/defrag
# 2. 关闭NUMA
$ numactl –interleave=all redis-server
# 3. 调整文件描述符
$ ulimit -n 65535
# 4. 调整内核参数
$ vi /etc/sysctl.conf
net.core.somaxconn = 65535
vm.overcommit_memory = 1
# 生效配置
$ sysctl -p
学习交流加群风哥QQ113257174
Part03-生产环境项目实施方案
3.1 Redis安装步骤
3.1.1 安装依赖
$ yum install -y gcc gcc-c++ make
# 或使用apt
$ apt update
$ apt install -y build-essential
3.1.2 下载源码
$ wget https://download.redis.io/redis-stable.tar.gz
# 解压
$ tar -xzf redis-stable.tar.gz
$ cd redis-stable
3.1.3 编译安装
$ make
# 安装到指定目录
$ make PREFIX=/redis/app install
# 验证安装
$ /redis/app/bin/redis-server –version
# 输出示例
Redis server v=7.0.12 sha=00000000:0 malloc=jemalloc-5.2.1 bits=64 build=abcdef1234567890
3.2 初始化配置
$ mkdir -p /redis/app /redis/fgdata /redis/log /redis/backup
# 复制配置文件
$ cp redis.conf /redis/app/
# 编辑配置文件
$ vi /redis/app/redis.conf
# 主要配置项
# 绑定地址
bind 192.168.1.100
# 端口
port 6379
# 数据目录
dir /redis/fgdata
# 持久化配置
dbfilename dump.rdb
save 900 1
save 300 10
save 60 10000
# AOF配置
appendonly yes
appendfilename “appendonly.aof”
appendfsync everysec
# 内存配置
maxmemory 16gb
maxmemory-policy allkeys-lru
# 安全配置
requirepass fgedu@2026
# 日志配置
logfile “/redis/log/redis.log”
# 保存配置
:wq
3.3 服务管理
$ vi /etc/systemd/system/redis.service
[Unit]
Description=Redis Server
After=network.target
[Service]
Type=forking
ExecStart=/redis/app/bin/redis-server /redis/app/redis.conf
ExecStop=/redis/app/bin/redis-cli -h 192.168.1.100 -p 6379 -a fgedu@2026 shutdown
Restart=always
User=root
Group=root
[Install]
WantedBy=multi-user.target
# 保存文件
:wq
# 重载systemd
$ systemctl daemon-reload
# 启动Redis
$ systemctl start redis
# 查看状态
$ systemctl status redis
# 输出示例
● redis.service – Redis Server
Loaded: loaded (/etc/systemd/system/redis.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2026-04-07 10:00:00 CST; 1min ago
Main PID: 12345 (redis-server)
Tasks: 4
Memory: 100.0M
CPU: 0.1%
CGroup: /system.slice/redis.service
└─12345 /redis/app/bin/redis-server 192.168.1.100:6379
# 设置开机自启
$ systemctl enable redis
# 停止Redis
$ systemctl stop redis
风哥提示:Redis接口限流是保护系统的重要机制,合理的限流策略可以防止系统过载,确保系统的稳定性和可用性。在实际应用中,需要根据具体业务场景和数据特点,选择合适的限流算法和策略。
Part04-生产案例与实战讲解
4.1 安装故障排查
## 1. 编译失败
# 问题:gcc版本过低
# 解决:升级gcc
$ yum install -y gcc gcc-c++
## 2. 启动失败
# 问题:端口被占用
# 解决:查看端口占用并修改配置
$ netstat -tlnp | grep 6379
$ vi /redis/app/redis.conf
port 6380
## 3. 权限错误
# 问题:目录权限不足
# 解决:设置正确的权限
$ chown -R root:root /redis/
## 4. 内存不足
# 问题:Redis启动时内存不足
# 解决:调整maxmemory参数
$ vi /redis/app/redis.conf
maxmemory 8gb
4.2 配置优化实战
# 1. 内存配置优化
maxmemory 16gb
maxmemory-policy allkeys-lru
# 2. 持久化优化
# RDB优化
save 3600 10
# AOF优化
appendonly yes
appendfsync everysec
no-appendfsync-on-rewrite yes
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
# 3. 网络优化
tcp-keepalive 300
timeout 0
# 4. 安全优化
bind 192.168.1.100
requirepass fgedu@2026
rename-command FLUSHALL “”
rename-command FLUSHDB “”
# 5. 连接优化
maxclients 10000
# 应用配置
$ systemctl restart redis
4.3 安全加固
## 1. 设置强密码
requirepass fgedu@2026
## 2. 限制绑定地址
bind 192.168.1.100
## 3. 禁用危险命令
rename-command FLUSHALL “”
rename-command FLUSHDB “”
rename-command KEYS “”
rename-command CONFIG “”
## 4. 使用ACL(Redis 6.0+)
$ /redis/app/bin/redis-cli -h 192.168.1.100 -p 6379 -a fgedu@2026 ACL SETUSER fgedu on >fgedu@2026 ~* +@all
## 5. 防火墙设置
$ firewall-cmd –permanent –add-port=6379/tcp
$ firewall-cmd –reload
## 6. 定期更新Redis版本
# 检查最新版本
$ wget -qO- https://download.redis.io/redis-stable/redis-server –version
更多学习教程公众号风哥教程itpux_com
Part05-风哥经验总结与分享
5.1 安装最佳实践
Redis安装最佳实践:
- 使用源码编译:便于控制版本和配置,学习交流加群风哥微信: itpux-com
- 合理规划目录结构:便于管理和维护
- 优化系统参数:提高性能和稳定性
- 配置持久化:确保数据安全
- 设置安全措施:防止未授权访问
- 使用systemd管理:便于服务管理
5.2 常见错误解决
- Redis启动失败:检查配置文件、端口占用、权限等
- 内存使用过高:调整maxmemory和淘汰策略
- 持久化失败:检查磁盘空间和权限
- 连接被拒绝:检查防火墙和绑定地址
- 密码认证失败:检查密码配置
5.3 安装后检查清单
## 1. 基本功能检查
– [ ] Redis服务是否正常运行
– [ ] 客户端是否能正常连接
– [ ] 基本命令是否能正常执行
## 2. 配置检查
– [ ] 内存限制是否合理
– [ ] 持久化配置是否正确
– [ ] 安全配置是否到位
– [ ] 网络配置是否合理
## 3. 性能检查
– [ ] 内存使用情况
– [ ] CPU使用情况
– [ ] 响应时间
– [ ] 并发连接数
## 4. 高可用检查
– [ ] 主从复制是否正常(如果使用)
– [ ] 哨兵是否正常(如果使用)
– [ ] 集群状态是否正常(如果使用)
## 5. 监控检查
– [ ] 日志是否正常记录
– [ ] 监控是否配置到位
– [ ] 告警是否设置
通过本文档的学习,您应该掌握了Redis的官方安装与初始化配置方法,能够在生产环境中正确部署和配置Redis。在实际应用中,需要根据具体业务需求和硬件环境,调整配置参数,确保Redis的性能和稳定性。
from Redis视频:www.itpux.com
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
