Redis 配置文件

Redis 的配置文件是控制其运行行为的核心,默认文件名为 redis.config(Windows 系统为redis.windows.conf),通常位于 Redis 安装目录下。通过配置文件,可定制网络、持久化、内存、安全等关键能力,是生产环境部署与性能调优的核心抓手。

一、配置文件基础操作

1. 配置文件位置

  • 默认路径:Redis 安装目录下的 redis.config

  • 自定义加载:启动时指定配置文件路径

    启动时加载指定配置文件

    redis-server /usr/local/redis/redis.config

2. 动态查看与修改配置(CONFIG 命令)

无需重启服务,可在线查看或临时修改配置,临时配置重启后失效。

(1)查看配置
复制代码
# 查看单个配置项(如日志级别)
redis 127.0.0.1:6379> CONFIG GET loglevel
1) "loglevel"
2) "notice"

# 查看所有配置项
redis 127.0.0.1:6379> CONFIG GET *
(2)修改配置
复制代码
# 修改日志级别为 warning
redis 127.0.0.1:6379> CONFIG SET loglevel "warning"
OK

3. 永久生效配置

动态修改仅临时生效,永久配置需直接编辑 redis.conf 文件,修改后重启 Redis 服务。

二、核心配置项详解

1. 基础运行配置

控制 Redis 进程的启动方式、PID 文件等基础行为。

表格

配置项 默认值 说明
daemonize no 是否以守护进程(后台)运行,生产环境建议设为 yes(Windows 不支持守护进程,保持 no)
pidfile /var/run/redis.pid 守护进程模式下,PID 文件存储路径,用于进程管理
port 6379 Redis 监听端口,默认 6379;多实例部署需修改为不同端口(如 6380)
bind 127.0.0.1 绑定主机 IP,默认仅本地访问;需外网访问时注释或改为 0.0.0.0(需配合密码 + 防火墙)
timeout 0 客户端空闲超时时间(秒),0 表示永不关闭,建议生产环境设为 300(5 分钟)释放空闲连接

2. 日志配置

控制日志级别、输出路径,用于问题排查与运行监控。

表格

配置项 默认值 说明
loglevel notice 日志级别:debug(调试,最详细)、verbose、notice(默认)、warning(仅警告 / 错误)
logfile "" 日志文件路径,默认空

3. 数据库配置

设置数据库数量,控制数据隔离能力。

配置项 默认值 说明
databases 16 数据库总数,默认 16 个(编号 0~15);通过 SELECT 库编号 切换数据库

4. 持久化配置(RDB+AOF)

Redis 数据默认存内存,重启丢失;持久化可将数据落盘,保障数据安全。

(1)RDB 配置(快照,全量备份)

定期将内存数据生成 .rdb 快照文件,恢复速度快,但可能丢失最后一次快照后的数据。

配置项 默认值 说明
save 3600 1 300 100 60 10000 快照触发条件(时间 + 修改次数):3600 秒(1 小时)≥1 次修改、300 秒(5 分钟)≥100 次修改、60 秒≥10000 次修改
dbfilename dump.rdb RDB 快照文件名
dir ./ RDB/AOF 文件存储目录,默认当前目录,建议指定独立路径
rdbcompression yes 是否压缩 RDB 文件(LZF 算法),节省磁盘但消耗 CPU
(2)AOF 配置(日志,增量备份)

记录所有写操作命令,重启后重放命令恢复数据,数据安全性高,但文件体积大、恢复慢。

表格

配置项 默认值 说明
appendonly no 是否开启 AOF,默认关闭;生产环境建议开启(yes),防止数据丢失
appendfilename appendonly.aof AOF 日志文件名
appendfsync everysec 刷盘策略:no(系统自动刷盘,快但丢数据)、always(每次写都刷盘,安全但慢)、everysec(每秒刷盘,折中,默认)
auto-aof-rewrite-percentage 100 AOF 重写触发比例:文件增长 100%(翻倍)时触发重写,压缩日志体积
auto-aof-rewrite-min-size 64mb AOF 重写最小文件大小,避免小文件频繁重写

5. 内存管理配置

控制 Redis 内存使用上限与淘汰策略,防止内存溢出。

表格

配置项 默认值 说明
maxmemory 0 最大内存限制,0 表示无限制;生产环境必须设置(如 2gb),避免占满服务器内存
maxmemory-policy volatile-lru 内存淘汰策略(内存满时删除 key):volatile-lru(默认,删除过期 key 中最近最少使用)、allkeys-lru(所有 key 中最近最少使用)、volatile-ttl(过期 key 中剩余时间最短)、noeviction(不删除,直接报错)

6. 安全配置

加固 Redis 访问安全,防止非法连接与数据泄露。

表格

配置项 默认值 说明
requirepass "" 设置访问密码,默认无密码;生产环境必须设置复杂密码,客户端需 AUTH 密码 认证
maxclients 128 最大客户端连接数,默认 128;0 表示无限制,连接超限后拒绝新连接

7. 主从复制配置(高可用基础)

实现主从数据同步,主节点写、从节点读,提升读性能与数据冗余。

配置项 默认值 说明
slaveof "" 从节点配置:指定主节点 IP + 端口(如 slaveof 192.168.1.100 6379),启动后自动同步主节点数据
masterauth "" 从节点连接主节点的密码(主节点设置 requirepass 时必填)
slave-read-only yes 从节点是否只读,默认 yes(禁止写操作,保障数据一致性)
相关推荐
captain3761 小时前
MyBatis(入门5)其他查询操作
java·数据库·spring boot·mybatis
夕除2 小时前
Redis 过期策略
redis·笔记·面试
小此方2 小时前
Re:Mysql数据库基础篇(八):详细讲解复合查询、多表查询、自连接、多行、多列子查询与合并查询
数据库·mysql
xszivvvv2 小时前
Mariadb数据库frm文件异常,如何恢复数据
数据库·mariadb
smile_life_3 小时前
MySQL 设置 防止账户被暴力破解
数据库·mysql
ShineWinsu3 小时前
对于Qt:QRadioButton常见属性以及QButtonGroup的解析
数据库·c++·qt·microsoft·gui·qradiobutton·qbuttongroup
测试盐4 小时前
oracle数据库卡顿排查
数据库·oracle
滕州市燕猫虎计算机科技工作室个体工商户4 小时前
MySQL、MVCC、多版本并发控制
数据库·mysql·mvcc·数据库事务
明航咨询-陈老师4 小时前
ITSS运行维护服务能力成熟度认证技术纵深:标准模型、等级路径、2026审核趋势与CS/CMMI对比
服务器·数据库·cmmi
缓慢更新5 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能