MySQL 루트 비밀번호 초기화
2022년 7월 15일
서버마다 시스템 사용자 비밀번호에 이어 데이터베이스 사용자 비밀번호까지 기억해야 하다 보니 가끔은 뇌가 파업을 선언합니다. MySQL 루트 비밀번호를 자주 잊어버려서, 초기화하는 방법을 정리해봅니다.
mysqld_safe를 사용하는 방법
1. 서비스 중지
데이터베이스 데몬을 멈춥니다.
$ sudo systemctl stop mysql
2. 무방비 상태로 실행
–skip-grant-tables 옵션을 주어 데몬을 실행합니다. 이렇게 하면 모두가 루트 권한을 얻습니다.
$ mysqld_safe --skip-grant-tables &
3. 비밀번호 초기화
mysql 쉘을 띄우고 다음 query를 실행해줍니다.
ALTER USER root IDENTIFIED BY '새 암호';
FLUSH PRIVILEGES;
4. 서비스 돌려놓기
이제 아까 mysqld_safe로 띄웠던 프로세스를 종료하고, 다시 데이터베이스 데몬을 띄웁니다.
$ mysqladmin -u root -p shutdown
$ sudo systemctl start mysql
참고
- https://www.a2hosting.com/kb/developer-corner/mysql/reset-mysql-root-password
- https://dev.mysql.com/doc/refman/8.0/en/set-password.html
- https://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_skip-grant-tables
댓글