【Redis】Redis如何修改密码?

文章目录

    • [一、为什么需要设置 Redis 密码?](#一、为什么需要设置 Redis 密码?)
    • [二、查看当前 Redis 是否设置了密码](#二、查看当前 Redis 是否设置了密码)
    • [三、在线修改 Redis 密码(临时生效)](#三、在线修改 Redis 密码(临时生效))
    • [四、永久修改 Redis 密码(重启保留)](#四、永久修改 Redis 密码(重启保留))
      • [1. 修改配置文件](#1. 修改配置文件)
      • [2. 重启 Redis 服务](#2. 重启 Redis 服务)
      • [3. 验证密码是否生效](#3. 验证密码是否生效)
    • 五、常见错误及解决方法
    • 六、安全建议
    • 七、总结

css 复制代码
127.0.0.1:6379> auth 123456
(error) ERR Client sent AUTH, but no password is set
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass 123456
OK
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379>

一、为什么需要设置 Redis 密码?

Redis 默认安装后是没有密码验证的,这意味着任何能访问 Redis 端口(默认 6379)的人都可以执行命令,存在严重的安全风险。因此,生产环境必须设置密码


二、查看当前 Redis 是否设置了密码

bash 复制代码
redis-cli
127.0.0.1:6379> CONFIG GET requirepass

如果返回为空字符串 "",表示当前没有设置密码。


三、在线修改 Redis 密码(临时生效)

这种方式不需要重启 Redis,但 Redis 重启后会失效。

bash 复制代码
redis-cli
127.0.0.1:6379> CONFIG SET requirepass 你的新密码
OK

设置后立即生效,后续所有操作都需要先认证:

bash 复制代码
127.0.0.1:6379> AUTH 你的新密码
OK

⚠️ 注意:如果 Redis 之前没有密码,直接 CONFIG SET requirepass 即可。如果已有密码,需要先 AUTH 旧密码 才能执行 CONFIG SET


四、永久修改 Redis 密码(重启保留)

1. 修改配置文件

找到 Redis 配置文件(通常是 /etc/redis/redis.conf/usr/local/etc/redis.conf):

bash 复制代码
sudo vim /etc/redis/redis.conf

找到如下行:

conf 复制代码
# requirepass foobared

去掉注释 #,并修改密码:

conf 复制代码
requirepass 你的新密码

2. 重启 Redis 服务

bash 复制代码
# 使用 systemd
sudo systemctl restart redis

# 或使用 init.d
sudo /etc/init.d/redis-server restart

3. 验证密码是否生效

bash 复制代码
redis-cli
127.0.0.1:6379> PING
(error) NOAUTH Authentication required.

127.0.0.1:6379> AUTH 你的新密码
OK
127.0.0.1:6379> PING
PONG

五、常见错误及解决方法

错误信息 原因 解决方案
ERR Client sent AUTH, but no password is set Redis 未设置密码,但客户端尝试用密码登录 检查 CONFIG GET requirepass
ERR invalid password 认证密码错误 确认密码是否正确
ERR unknown command 'CONFIG' Redis 禁用了 CONFIG 命令 使用配置文件方式修改,或启用 CONFIG 命令

六、安全建议

  1. 不要使用弱密码,建议大小写字母+数字+特殊符号组合。
  2. 绑定本地 IP :在配置文件中设置 bind 127.0.0.1,避免暴露公网。
  3. 修改默认端口 :将 port 6379 改为其他端口。
  4. 启用 Redis 6.0+ 的 ACL 功能,实现多用户权限管理。

七、总结

方式 生效方式 重启后是否保留 适用场景
CONFIG SET 立即生效 ❌ 不保留 临时测试、紧急设置
修改配置文件 + 重启 重启后生效 ✅ 保留 生产环境永久配置

推荐 生产环境使用配置文件方式 ,并配合 AUTH 命令验证,确保 Redis 不被未授权访问。


相关推荐
填满你的记忆7 分钟前
10万QPS下,Redis缓存如何避免雪崩?
数据库·redis·缓存
IT界的老黄牛21 分钟前
MongoDB 主从切换排查实战:从 docker ps 到 jq,一套 SOP 定位死因
数据库·mongodb·docker
睡不醒男孩03082322 分钟前
第四篇:数据库国产化与信创替代的守护者:基于CLup的异构数据库一站式运维平台构建
运维·数据库·金融·clup·中启乘数
Lumistory22 分钟前
2026年城市照明工程4大核心痛点及解决方案
大数据·数据库
岳麓丹枫00132 分钟前
PG数据库无法接受连接问题分析定位
数据库·postgresql
IT策士43 分钟前
Redis 从入门到精通:数据结构String 与键管理
数据结构·redis·wpf
JdSnE27zv1 小时前
SQLite内存数据库
数据库·sql·sqlite
SelectDB技术团队1 小时前
预约发布会|核心产品力首发,如何构建面向 Agent 时代的企业级数据引擎
数据库·数据仓库·人工智能·数据分析·可观测·apache doris·selectdb
2601_961845151 小时前
2026四级作文预测题|英语四级写作押题+提纲PDF
java·c语言·数据库·c++·python·pdf·php
计算机安禾1 小时前
【数据库系统原理】第13篇:现实世界的概念抽象:实体-联系模型向关系模型的转化策略
数据库