Redis设置密码后无效怎么排查?配置密码不生效怎么修复?

文章导读
首先检查你的redis.conf文件里requirepass那个地方有没有正确写密码,比如requirepass mypassword,确保没有拼写错误。然后重启Redis服务,让配置生效。如果你用的是docker容器,记得在docker run命令里加--requirepass参数,或者修改配置文件挂载进去。排查步骤:1.用redis-cli连上Redis,看能不能不输密码就连上,如果能,那就是
📋 目录
  1. CSDN博客用户分享
  2. Stack Overflow中文讨论
  3. 知乎经验帖
  4. 博客园文章摘录
  5. GitHub issue讨论
A A

首先检查你的redis.conf文件里requirepass那个地方有没有正确写密码,比如requirepass mypassword,确保没有拼写错误。然后重启Redis服务,让配置生效。如果你用的是docker容器,记得在docker run命令里加--requirepass参数,或者修改配置文件挂载进去。排查步骤:1.用redis-cli连上Redis,看能不能不输密码就连上,如果能,那就是没生效。2.检查配置文件路径对不对,Redis启动时指定了哪个conf文件。3.看日志文件redis.log,有没有报错说密码配置问题。修复方法:改好conf后kill掉Redis进程,再用redis-server redis.conf启动,确保用对了配置文件。

CSDN博客用户分享

我之前设置requirepass 123456后,发现还是能无密码连上。排查发现是我启动Redis时没指定配置文件,直接redis-server启动的,用默认conf。解决:redis-server /etc/redis/redis.conf,现在密码生效了。另外,如果是Windows版,记得保存conf文件为unix格式,别有BOM头。

Stack Overflow中文讨论

问题:Redis配置了requirepass,但客户端连不上也连不上不对,是连上了!答:常见原因是多个Redis实例,或者用redis-cli -h ip -p port连,但忘了加-a密码。排查:ps aux | grep redis看启动命令,有没有带conf。修复:停止服务,redis-server --requirepass "password" /path/to/redis.conf 测试下。还可能是bind 127.0.0.1,只允许本地连。

知乎经验帖

我踩坑了,requirepass设了,重启后无效。原因是配置文件权限问题,Redis用户读不了conf文件。chmod 644 redis.conf,chown redis:redis redis.conf。然后systemctl restart redis。另一个坑:如果用supervisor管理,重启supervisor就能生效。日志查:tail -f /var/log/redis/redis.log,看启动时加载了哪个conf。

Redis设置密码后无效怎么排查?配置密码不生效怎么修复?

博客园文章摘录

Redis密码不生效排查清单:1.确认requirepass后面有空格吗?requirepassmypassword错的,得requirepass mypassword。2.客户端连时用redis-cli -a password。3.如果是集群模式,密码在cluster节点也要设。4. docker里:docker exec -it redis redis-cli,测试auth password。修复:统统重启,用redis-cli ping看PONG就行,无密码PONG说明没设对。

GitHub issue讨论

User: 设置requirepass后,redis-benchmark还是无密码跑。Reply: benchmark默认不带认证,加 -a yourpass。另一个问题是AOF或RDB持久化时,密码没同步到slave。master-slave复制,slave也要设一样密码。修复:全集群统一conf,脚本部署避免手动改错。

FAQ

Q: Redis设置密码后,为什么本地能连远程不能?
A: 检查bind配置,默认只绑127.0.0.1,改成0.0.0.0或具体IP,重启。

Redis设置密码后无效怎么排查?配置密码不生效怎么修复?

Q: docker Redis密码怎么设置?
A: docker run -d --name redis -p 6379:6379 -e REDIS_PASSWORD=123456 redis:latest,或者挂载自定义conf。

Q: 如何验证密码是否生效?
A: redis-cli后输入auth password,成功返回OK,无密码直接连失败就是生效。

Q: Windows Redis密码无效?
A: 用redis.windows.conf,改requirepass,重启redis-server.exe。