-- MySQL v8.x 이하 버전.
mysql> grant all privileges on DB이름.* to 계정ID@'%' identified by '계정비밀번호';
mysql> flush privileges;

-- MySQL v8.x 이상.
mysql> create user 계정ID@'%' identified by '계정비밀번호' ;
mysql> grant all privileges on DB이름.* to 계정ID@'%' with grant option;
mysql> flush privileges;

권한 주는 명령어 정책이 변경 되었나 봅니다 (비밀번호 강도도 높아 졌나 봅니다).

# application.properties
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/db?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Seoul&allowPublicKeyRetrieval=true&useSSL=false
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

기본값으로 인증 정책도 SSL 로 변경 되었나 봅니다. 개발 환경에서는 임시로 SSL 비활성화 옵션을 줘야 인증 가능.

https://dev.mysql.com/doc/refman/8.0/en/grant.html

 

MySQL :: MySQL 8.0 Reference Manual :: 13.7.1.6 GRANT Statement

13.7.1.6 GRANT Statement GRANT priv_type [(column_list)] [, priv_type [(column_list)]] ... ON [object_type] priv_level TO user_or_role [, user_or_role] ... [WITH GRANT OPTION] [AS user [WITH ROLE DEFAULT | NONE | ALL | ALL EXCEPT role [, role ] ... | role

dev.mysql.com

'컴퓨터 > MySQL' 카테고리의 다른 글

MySQL 에서 재귀 쿼리 사용하기  (0) 2020.09.06

+ Recent posts