redisson WRONGPASS invalid username-password pair or user is disable

1、技术架构:若依微服务框架

复制代码
<dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-alibaba-dependencies</artifactId>
      <version>2021.1</version>
 </dependency>    
<dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-dependencies</artifactId>
       <version>2020.0.4</version>
</dependency>
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>2.5.6</version>
</dependency>
<dependency>
    <groupId>org.redisson</groupId>
    <artifactId>redisson-spring-boot-starter</artifactId>
    <version>3.17.6</version>
</dependency>

2、项目上一直用的自己部署的Redis(7.0.4),并没有设置密码,所以配置都是不带密码的如下

复制代码
## 不带密码(默认username:default),连接成功
Spring  
  redis:
    host: 127.0.0.1
    port: 6379
    password: 123456
    database: 0

3、总集突然要求所有应用全部使用他们提供的Redis服务(7.0.7,带username),根据总集所提供账号密码配置后,报错如下

复制代码
WRONGPASS invalid username-password pair or user is disable.. channel: ************ command: (AUTH), params: (password masked)
## 根据网上查的:账号密码带单引号 双引号 password换成auth 均连接失败
spring
  redis:
    host: 127.0.0.1
    port: 6379
    username: 'username'
    password: '123456'
    database: 0

4、经查询,在 redisson-spring-boot-starter:3.17.7版本上已修复了此bug,升级版本后经验证OK

PS:问题最终是解决了,但经过总是曲折的。

5、首先在网上查说是在高版本已修复,但是并未具体哪个版本,所以我第一时间直接将redisson升级到最高版本,发现本地启动确实解决了这个问题,redis连接成功

复制代码
<dependency>
    <groupId>org.redisson</groupId>
    <artifactId>redisson-spring-boot-starter</artifactId>
    <version>3.31.0</version>
</dependency>

5、但是当打包上服务器时出现了别的问题,本地启动正常,打包上线出问题???

复制代码
Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/springframework/data/redis/connection/zset/Tuple

6、经查询,是springboot版本与redisson-spring-data版本的依赖不兼容导致

7、我将redisson版本升级到了3.31.0,就导致依赖直接成了redisson-spring-data-33

8、此时可以排除内部redisson-spring-data,使用外部引用的方式来解决此问题,经验证此办法也OK

复制代码
<dependency>
    <groupId>org.redisson</groupId>
    <artifactId>redisson-spring-boot-starter</artifactId>
    <exclusions>
      <exclusion>
        <groupId>org.redisson</groupId>
          <artifactId>redisson-spring-data-33</artifactId>
      </exclusion>
    </exclusions>
</dependency>
<dependency>
  <groupId>org.redisson</groupId>
  <artifactId>redisson-spring-data-27</artifactId>
  <version>3.17.7</version>
</dependency>

9、虽然通过8中描述这种办法也能解决,但还是想知道在哪个版本修复了username不生效的问题,故查询redisson官网更新记录,才找到了具体版本3.17.7

https://github.com/redisson/redisson/releases?page=4

10、最终选择将 redisson-spring-boot-starter 升级到 3.17.7解决此问题

相关推荐
@PHARAOH41 分钟前
HOW - Go 开发入门(一)
开发语言·后端·golang
美好的事情能不能发生在我身上7 小时前
Hot100中的:贪心专题
java·数据结构·算法
myloveasuka7 小时前
Java与C++多态访问成员变量/方法 对比
java·开发语言·c++
Andya_net8 小时前
Spring | @EventListener事件机制深度解析
java·后端·spring
lang201509288 小时前
18 Byte Buddy 进阶指南:解锁 `@Pipe` 注解,实现灵活的方法转发
java·byte buddy
重庆小透明8 小时前
【java基础篇】详解BigDecimal
java·开发语言
sunwenjian8868 小时前
Springboot项目本地连接并操作MySQL数据库
数据库·spring boot·mysql
无限大69 小时前
《AI观,观AI》:专栏总结+答疑|吃透核心,解决你用AI的所有困惑
前端·后端
小杍随笔9 小时前
【Rust 语言编程知识与应用:基础数据类型详解】
开发语言·后端·rust
毅航9 小时前
告别 AI 名词焦虑:一文读懂从 LLM 到 Agent Skill的演进
人工智能·后端