혼자 공부하는✍/오류와의 싸움❌
application.yml 과 mysql 연동 오류
appassionato
2022. 11. 11. 23:46
application.yml에 mysql 환경설정을 끝내고 스프링부트를 돌려보는데 오류가 났다.
access denied for user 'root'@'localhost' (using password: yes)
라는 오류메세지가 떠서 구글링을 했는데
나오는 결과가
1. 비밀번호 오류
2. 권한이 없음
두 가지였고 두 케이스 모두 나한테는 해당이 안 되었다.
좀 더 찾아보니 숫자가 0으로 시작했을 때 오류라는 제목의 블로그가 눈에 띄었다.
정말 예상치 못하게 application.yml 파일에서 0으로 시작하는 숫자 값을 사용해서 오류가 발생한 것이라고 한다.
이 블로그를 보자마자 이거구나 싶었는데 내 mysql 비밀번호가 0000이었기 때문이다.
오류의 원인은 YAML 1.1버전까지는 0으로 시작되는 숫자를 8진법으로 인식하기 때문이라고 한다.
그래서 0으로 시작하는 값을 10진수로 변환하여 줄력하기 때문에 원하는대로 설정이 안 되었던 것이다.
간단한 해결 방법은 값에 ''를 붙이는 것이고,
다른 방법은 YAML 1.2버전을 사용하는 것이다.
바로 비밀번호를 '0000'으로 바꾸어 넣어줬더니 오류 없이 제대로 돌아갔다.
항상 제대로 설정했다고 생각해도 예상치 못한 곳에서 오류가 발생하는 것 같다.
방심하지 않고 언제 어디서 오류를 마주하더라도 해결 방법은 있다는 것을 잊지말자!
아무리 그렇게 생각하려고 해도 빨간색이 뜨면 심장이 쪼그라드는 기분은 어쩔 수 없을 것 같다...🥺
도움받은 블로그
https://wildeveloperetrain.tistory.com/60