[MySQL] MySQL ROOT 비밀번호 분실시 초기화 방법
이번 피드에서는 MySQL사용시 root 비밀번호를 분실하였을 경우 초기화하는 피드를 정리해보겠습니다.
DB를 사용하다 보면, 종종 root비밀번호를 분실할 경우가 생기게 되는데, MySQL을 사용할 경우의 초기화 방법이다.
1. MySQL 중지
$ mysql.server stop
root 비밀번호를 초기화하기 위해, 우선 MySQL서버를 중지시켜야 한다.
위의 명령어를 통해 중지시켜준다.
2. MySQL 서버 인증없이 접근 할 수 있도록 설정
$ mysql.server start --skip-grant-tables
MySQL 서버를 시작할때, --skip-grant-tables 옵션을 주게되면 MySQL 접속시, 인증없이 서버접근이 가능해진다.
3. root 계정으로 접속해보기
$ mysql -u root
2번에서 별도의 인증없이 서버에 접근할 수 있도록 옵션설정을 해두었으므로, 위의 명령어를 이용하여 MySQL서버에 접근해본다.
4. root 초기화
mysql> update mysql.user set authentication_string=null where user='root';
mysql> flush privileges;
정상적으로 서버에 접근이 됬으므로, root계정의 비밀번호를 초기화해준다.
MySQL서버를 시작할때, --skip-grant-tables 옵션을 주고 시작하였기때문에, root비밀번호를 바로 바꾸지는 못한다.
그렇기 때문에 일단 null로 초기화해준다.
초기화를 완료해주고 flush privileges 명령어를 통해 변경사항을 적용해준다.
5. MySQL 서버 재시작 후 root계정으로 접근하기
$ mysql.server restart
$ mysql -u root
위의 명령어를 통해 MySQL서버를 재시작하고, root계정으로 접근해본다.
비밀번호를 초기화 했기때문에, root로 접근이 가능하다.
6. 비밀번호 변경하기
mysql> alter user 'root'@'localhost' identified with caching_sha2_password by '변경할 패스워드';
위의 명령어를 통해 비밀번호를 변경해준다.
위의 과정을 정상적으로 마쳤으면, root 패스워드를 초기화하고 변경이 완료되어 정상적으로 사용이 가능하다.
$ mysql -u root -p
위의 명령어를 통해 변경한 비밀번호가 적용이 잘 되었는지 확인해본다.
이번 피드에서는 MySQL root계정 패스워드를 분실하였을 경우, 초기화 및 변경하는 피드를 정리해보았습니다.
이번 피드는 여기에서 마무리하겠습니다.