redis配置个密码嘛,超级简单,先修改redis配置,放开requirepass注解:
requirepass 123456
在application.yml中添加密码配置:
spring:
redis:
host: localhost
database: 0
port: 6379
password: 123456
你以为只是这样?
没错!springboot+redisson的工作就是这么简单!
然鹅,redis却连不上!报的错误是:
ERR Client sent AUTH, but no password is set
密码没设置?王德发?难道redisson不会自动注入redis密码?
百度一番,看到有人单独写了JavaConfig类来配置:
@Data
@Configuration
@ConfigurationProperties(prefix = "spring.redis")
public class RedisConfig {
private String host;
private int port;
private String password;
private int database;
@Bean
public RedissonClient redisson( ){
Config config = new Config();
config.useSingleServer().setAddress("redis://"+host+":"+port).setPassword(password).setDatabase(database);
return Redisson.create(config) ;
}
}
再试,还是连不上!王德发~额根(again)!
看一下redis配置:
不知道你们有没有注意到,redis.windows.conf下面还有一个redis.windows-service.conf?
没错,问题就出在这孙子身上,service:服务。我的redis确实被配置成了Windows服务,使用的配置文件就变成了它,而不是普通的那个。
在这孙子里头再配置requirepass后,删掉RedisConfig.java,重启应用,顺利连接!