[MySQL] 비밀번호 분실 및 변경 업데이트 ERROR 1045 (28000)

Nammm·2021년 8월 10일
1

SQL 비밀번호 분실, 혹은 재설정이 필요한 분들에게

"ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)" 를 그만 직면하시길 바라며

1. MySQL 서버 멈추기

$ cd /opt/homebrew/opt/mysql/bin
$ brew services stop mysql

2. MySQL 서버 시작

비밀번호 없이 MySQL에 접속하기 위해서 서버 승인 생략한다.

$ mysql.server start --skip-grant-tables

3. root 유저로 MySQL에 접속

$ mysql -u root

4. mysql 데이터베이스에 접근

여기서부턴 맨 뒤 ';' '세미콜론' 필수! 별다섯개!!! 여기서부턴 SQL서버 내부이기 때문!

$ use mysql;

5. 권한 변경 (별다섯개)

$ FLUSH PRIVILEGES;

6. 비밀번호 변경

ALTER USER는 상향된 MySQL보안 업데이트!

ALTER USER 'root'@'localhost' IDENTIFIED BY '설정할비밀번호';
Ex. ALTER USER 'root'@'localhost' IDENTIFIED BY 1234;

//'설정할비밀번호' = 1234, 숫자를 바로 적어주면 된다.
// not '1234', but 1234 <<< 작음따옴표는 아직도 간혹 헷갈린다.

7. mysql을 끔.

EXIT; // 얘는 세미콜론 안써도되긴 함, 참눼,,, 이거만 세미콜론 안쓰고 가능함 =ㅅ=, 일관성 없어라리

8. MySQL 서버 멈추기

비밀번호 없이 들어가기 위해서 처음 시작 때, 걸었던 --skip-grant-tables 옵션이 들어간 MySQL 서버 멈추기

mysql.server stop

9. MySQL 서버 시작 (여기서부턴 설치 후 초기세팅과 유사함)

mysql.server start

10. mysql에 다시 접속

위에서 세팅한 비밀번호를 입력해보면!?
Tha-Dan~! 된다 된다요~!

mysql -u root -p

11. 번외-더블체크) 잘 되었는지 확인하고 싶다면

select user, authentication_string from user;

Summary

최초 MySQL 설치 후 세팅했던 순서를 되돌아 보면,

  1. 설치 -> 2. 서버전원 ON -> 3. 서버접속 -> 4. 비밀번호 업데이트
1. $ brew install mysql
2. $ brew services start mysql
3. $ mysql -u root -p
4. $ mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourPassword';

****However, MySQL PW재설정은

**

  1. 전원 Off -> 2. SQL 우회해서? 서버접속 (비밀번호 분실상태, PW없이 진입하기 위함) -> 3. MySQL DB접근 -> 4.PW재설정 -> 5. 다시 정상적으로 MySQL 접속

어제도 코린이는 괜한 M1 탓을 했다. ㅋㅎㅋ... 근데 재밋던건 나 말고도 다른 코린이도 그런다는 것이다. 반가워라!

참고: https://velog.io/@nari120/MySQL8-%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EB%B6%84%EC%8B%A4-%EB%B0%8F-%EB%B3%80%EA%B2%BD

0개의 댓글