[Mysql] Access denied for user (using password: yes) 에러 발생
JPA 공부하면서 뭔가 혼자 해보려고 기존에 쓰던 h2데이터베이스 말고 다른 데이터베이스 뭘 쓸까 하다가 개인적인 작업이기 때문에 mysql 데이터베이스를 사용하려했는데...
저 위에 나오는 에러에서 (using password: YES) 이 부분이 YES라는 것은 거의 비밀번호를 잘못 입력했을 때 나오는 에러라고한다...
계정도 방금 생성했고, 테스트하는 계정의 비밀번호는 개발 시작하고 지금까지 쭉 동일한 비밀번호를 사용했기 때문에 전혀 비밀번호가 틀릴 일이 없는데 ?
그래서 그냥 처음부터 다시 세팅했다.
C:\Users> mysql -u root -p
콘솔 창에서 mysql 루트 계정으로 접속한다.
mysql> use mysql
해당 모드로 변경한 후에
select host, user, authentication_string from user;
계정을 생성하지 않았다면 아무것도 나오지 않겠지만
create user 유저명@호스트명(ex.localhost) identified by '비밀번호';
쿼리를 입력하게 되면
+-----------+------------------+------------------------------------------------------------------------+
| host | user | authentication_string |
+-----------+------------------+------------------------------------------------------------------------+
| localhost | 유저명 | 패스워드 |
이런식으로 나오게 된다.
그럼 여기서 권한을 주어야 하는데
grant all privileges on 해당 데이터베이스명.* to 유저명@호스트;
all은 모든 권한을 부여하려고 썼다. all 말고도 select 와 같은 다른 개별 권한도 줄 수 있다.
사실 여기서 저 계정을 입력하고 들어가면 되어야 하는거 아니야 ? 싶었는데 내 뜻대로 되지 않았기때문에...
alter user '유저명'@'호스트' identified with mysql_native_password by '비밀번호';
비밀번호 변경을 다시 해줬다.
flush privileges;
플러시는 습관처럼 작업 후 해준다.
끝 !
* 추가 수정(2021-09-07)
회사 PC에서 세팅 해 놓은대로 집에와서 했는데... ? 집 컴퓨터에서 Public Key Retrieval is not allowed 라는 에러가 나버렸다 ㅎㅎ Mysql 8.0 이상의 버전은 드라이버 속성의 allowPublicKeyRetrieval=true의 설정을 해주어야 한다는데 ??
또 끝 !
'에러' 카테고리의 다른 글
[Mysql] root 비밀번호 변경하기 (접속 안될 때) (0) | 2021.10.27 |
---|---|
[Mysql] Access denied for user (using password: yes) 에러 재발생 되다가 안될 때 (feat. 3306포트) (0) | 2021.10.27 |