spring boot로 블로그 페이지를 만들던 중
데이터베이스(mysql)에 연결하기 위해 applicationProperties 에 datasource를 정보를 입력하고 서버 실행을 시켰더니 아래와 같은 에러메시지가 떴다.
ERROR 39388 --- [blogServer][ main] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] due to: Unable to determine Dialect without JDBC metadata (please set 'jakarta.persistence.jdbc.url' for common cases or 'hibernate.dialect' when a custom Dialect implementation must be provided)

위와 같은 메시지가 떴을 때 내가 현재 연결하고자 하는 mysql 계정 속 사용자 이름과 비밀번호, 포트번호 등 을 정확히 입력하였는지 확인하여야 한다.
나같은 경우엔 입력된 데이터소스 중
대부분 mysql 을 설치할 때 사용자 계정과 비밀번호를 root로 지정 하는 경우가 많다. 나 역시 당연히 비밀번호를 root로 설정했을거라 생각하고 datasource password를 root로 입력해주었고 연결에 실패 하였다.
그러나 위 에러메시지에서 보여주듯 'mysql 계정 비밀번호가 일치하지 않는다.' 라고 콕 찝어 원인을 알려주지 않기 때문에 나와 같은 초보들은 위와 같은 에러 해결에 몇일을 소요 할 수도 있다. 😭
mysql에 설정한 root 사용자의 제대로 된 비밀번호를 다시 datasource에 입력하여 주면 에러 없이 서버가 다시 잘 구동되는 것을 확인할 수 있다.

ALTER USER 'root@localhost' IDENTIFIED BY '새로 바꿀 비밀번호 입력' ;
끝!