스프링 부트에서 Redis 서버를 연결해서 작동하는 로직이 있는데 코드를 작성한 후 관련 api를 실행시켜보니 ERR Client sent AUTH, but no password is set라는 에러로그가 출력됐다.
Redis 서버에 비밀번호 설정을 안해줬거나 설정해줬는데 yml과 같은 Redis 서버 연결관련 설정 파일에 비밀번호를 제대로 적지 않아줘서 생기는 오류이다.
분명 초반에 깔 때 비밀번호를 설정해주고 확인까지 했었는데 비밀번호가 날라가있었다.
+원인을 알았다. 집에서 사용하는 IP가 고정적인 IP가 아니여서 가끔씩 IP가 바뀌는데 IP가 바뀌면 redis 설정을 다시 해줘야하는 것 같다.
참고용 내 redis 서버 yml 설정 파일 코드는 아래와 같다.
spring:
redis:
host: localhost
port: 6379
password: '설정한비밀번호'
lettuce:
pool:
max-active: 10
max-idle: 10
min-idle: 2
비밀번호를 설정해주지 않았거나 기억이 안난다면 아래를 따라오면 된다.
비밀번호 확인
redis-cli 실행
config get requirepass
"requirepass"
""
뜨면 비밀번호 설정이 안된 상태로 설정해줘야 한다.
비밀번호 설정법
redis-cli 실행
config set requirepass 비밀번호
이후 아래 코드를 치면
auth 설정한비밀번호
config get requirepass
"requirepass"
"설정한비밀번호"
정상적으로 비밀번호가 변경됐음을 확인할 수 있다.