오랜만에 MariaDB root 계정으로 로그인해야하는 일이 생겼는데,, 거의 2년만에 로그인 하는거라 비밀번호를 까먹었다.
나 말고도 많은 사람이 비밀번호를 자주 까먹는 것 같아서 어떻게 초기화 할 수 있는지 공유하고자 이 글을 쓴다.
일단, MariaDB를 종료시켜야 한다.

$ sudo systemctl stop mariadb
$ sudo systemctl stop mysql

이후에 mysql을 안전모드로 시작해야 한다. 그 이유는 비밀번호를 사용하지 않고 접속하기 위해서임! (이때 뒤에 & 문자를 붙이는 이유는 프로세스를 백그라운드에서 mysql이 동작하게 하는 리눅스 명령어임. 그냥..ㅋㅋ 은근 모르는 사람 많길래..)

$ sudo mysqld_safe --skip-grant-tables &

실행했으면, root 계정으로 실행시켜주자.

$ mysql -u root

MariaDB가 정상적으로 실행되면 안전모드 진입에 성공했다! 와!(짝짝짝)
이제 계정 초기화를 해 주면 된다.

$ mysql > SET PASSWORD FOR 'root'@'localhost' = PASSWORD('PASSWORD');

만약 다음과 같은 오류가 발생하면, 다음 명령어를 실행해주고, 다시 비밀번호를 설정하면 된다.

The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement

$ mysql > flush privileges;
$ mysql > SET PASSWORD FOR 'root'@'localhost' = PASSWORD('PASSWORD');
$ mysql > flush privileges;

이제 비밀번호 재설정이 완료됐다! 백그라운드에서 실행중인 mysqld_safe를 종료시키고, MariaDB를 재시작 하면 정상적으로 내가 설정한 비밀번호를 통해 로그인 할 수 있다.
간혹, SET PASSWORD ... 질의문으로 비밀번호 변경이 안된다면, 다음 질의를 실행해보라

$ mysql > ALTER USER 'root'@'localhost' IDENTIFIED BY 'PASSWORD';

 

+ Recent posts