Ubuntu Redis配置文件的编辑与理解指南
Ubuntu系统中,Redis的主配置文件默认存储在**/etc/redis/redis.conf**。若需确认路径,可通过以下命令验证:
ps aux | grep redis(输出中ExecStart后的路径即为配置文件位置);sudo systemctl status redis(ExecStart字段显示配置文件路径);redis-cli CONFIG GET dir(获取配置文件所在目录)。nano)修改配置,需root权限:sudo nano /etc/redis/redis.conf
Ctrl+W)找到目标参数,修改后保存(Ctrl+O→回车→Ctrl+X退出nano)。sudo systemctl restart redis-server
redis-cli测试关键配置(如密码、端口)。bind:指定Redis监听的IP地址。默认127.0.0.1(仅本地访问),若需远程访问可改为0.0.0.0(需配合密码和安全组);port:Redis服务端口,默认6379,可根据需求修改(如6380);protected-mode:保护模式。yes(默认)时,仅允许本地连接;no时允许远程连接(生产环境建议设为yes并配合密码)。requirepass:设置访问密码。取消注释(删除行首#)并填入强密码(如requirepass yourStrongPassword123),重启后需通过AUTH命令认证:redis-cli
AUTH yourStrongPassword123
rename-command:重命名敏感命令(如FLUSHALL),防止误操作。例如:rename-command FLUSHALL ""
```(禁用`FLUSHALL`命令)。
Redis支持**RDB(快照)和AOF(追加日志)**两种持久化方式:
save 900 1 # 900秒内至少1次修改则保存快照
save 300 10 # 300秒内至少10次修改则保存
save 60 10000 # 60秒内至少10000次修改则保存
dbfilename dump.rdb # 快照文件名
dir /var/lib/redis # 数据存储目录
appendonly yes # 开启AOF
appendfilename "appendonly.aof" # AOF文件名
appendfsync everysec # 同步频率(everysec:每秒同步,平衡性能与安全)
注:RDB适合备份,AOF适合数据安全性要求高的场景,可同时开启。
maxmemory:设置Redis最大内存(如maxmemory 512mb),避免内存耗尽;maxmemory-policy:内存满时的淘汰策略。常用策略:
allkeys-lru:淘汰最近最少使用的键(推荐);volatile-lru:仅淘汰设置了过期时间的键;noeviction:不淘汰,内存满时写入报错(默认)。daemonize:设为yes使Redis在后台运行(生产环境推荐);logfile:指定日志文件路径(如logfile /var/log/redis/redis-server.log);loglevel:日志级别(debug/verbose/notice/warning,生产环境建议notice)。设置密码并验证:
编辑/etc/redis/redis.conf,取消requirepass注释并设置密码:
requirepass yourStrongPassword123
重启Redis:sudo systemctl restart redis-server;
认证:redis-cli AUTH yourStrongPassword123。
允许远程访问:
编辑/etc/redis/redis.conf,修改bind和protected-mode:
bind 0.0.0.0
protected-mode no
重启Redis:sudo systemctl restart redis-server;
配置防火墙允许端口(如6379):sudo ufw allow 6379/tcp。
调整内存限制:
编辑/etc/redis/redis.conf,设置最大内存和淘汰策略:
maxmemory 1gb
maxmemory-policy allkeys-lru
重启Redis:sudo systemctl restart redis-server。
requirepass)并限制访问IP(bind);ufw)限制端口访问,避免未授权访问;/var/lib/redis(数据目录)和/etc/redis/redis.conf(配置文件);sudo systemctl restart redis-server)使更改生效。