【Redis】安装Redis后报ERR Client sent AUTH, but no password is set

一、问题描述

安装Redis后使用auth验证是否安装成功(或者其它应用访问redis时报错),报ERR Client sent AUTH, but no password is set

127.0.0.1:6379> auth 123456
(error) ERR Client sent AUTH, but no password is set

二、问题解决

Win10下,在安装完成Redis后,需要在命令行设置auth账户密码,并登录验证是否安装成功。

  1. cmd到redis目录,启动redis服务
  2. 设置密码:
127.0.0.1:6379> config set requirepass 
### 解决方案 当遇到 `ERR Client sent AUTH, but no password is set` 错误时,这通常意味着 Redis 客户端尝试通过认证命令 (`AUTH`) 进行身份验证,而服务器并未配置任何密码。以下是几种方法来处理这个问题。 #### 方法一:移除客户端的身份验证请求 如果本地或测试环境中不需要密码保护,则可以在应用程序代码中禁用或删除向 Redis 发送的 `AUTH` 命令。对于 Spring Boot 应用程序来说,在其配置文件(如 application.properties 或者 application.yml)里去掉关于 Redis 密码的相关属性即可[^2]。 #### 方法二:为Redis实例设置密码 为了增强安全性并允许带有凭证的应用程序正常工作,应该给 Redis 设置一个密码: 1. 找到 Redis 配置文件(例如 Linux 上通常是 `/etc/redis/redis.conf`, Windows 下可能是安装路径中的 `redis.windows.conf` 文件) 2. 编辑该文件并将下面这一行取消注释,并指定所需的密码: ```properties requirepass your_password_here ``` 3. 保存更改后的配置文件。 4. 使用新的配置重新启动 Redis 服务: - 对于Linux系统可以执行如下命令: ```bash sudo systemctl restart redis.service ``` - 如果是在Windows上运行的话,请打开命令提示符窗口,切换至Redis所在的目录,然后键入以下指令: ```batchfile E:\home\redis>redis-server.exe redis.windows.conf ``` 此时再使用相同的密码去调用 `AUTH` 就不会收到之前的错误消息了;相反会返回 "OK"[^3]。 另外需要注意的是,一旦设置了密码之后,每次连接都需要先进行认证才能继续其他操作,比如查询所有的 key 列表之前要先做一次成功的 `auth` 调用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值