STUDY - MariaDB root 암호 변경

준동이·2024년 2월 4일
0

DataBase - MariaDB

목록 보기
1/2
post-thumbnail

시작하며

오늘 공부를 하려고 HeidiSQL에서 root계정으로 접속하려는데

access denied for user 'root'@'localhost' (using password yes)

이런 에러가 뜨는게 아닌가...

그래서 비밀번호를 분실 or 위같은 에러가 날때 해결한 방법을 적어보려고 한다 !



비밀번호 설정하기


우선 내가 알아낸 방법의 순서는

  1. MariaDB 서비스 중지
  2. root 계정에 권한 없이 접속
  3. root 계정 접속
  4. 비밀번호 변경

순서이다.

어려운건 없으니 하나하나씩 해보자.


MariaDB 서비스 중지

우선 MariaDB 서비스를 중지해야한다.
cmd창에서 services.msc 를 실행해서 서비스 창을 켜도 되고, 윈도우 검색창에서 "서비스"를 검색하면 바로 나온다.

그리고 MySQL이나 MariaDB가 있다면 중지를 시켜주자

서비스를 중지하는 이유는 초기활할 때 서비스를 실행하는 명령어를 직접 입력해야하는데, 그 과정에서 충돌이 나지 않도록 하기 위해서이다.



root 계정에 권한 없이 접속하기

이제 권한 없이 접속을 해보자.

services.msc
MariaDB서비스 중지를 위해 서비스 프로그램을 실행시키기 위한 명령어

cd C:\Program Files\MariaDB 10.11\bin
이 경로는 나의 MariaDB의 bin 경로여서 설정해준 것.

mysqld --skip-grant
권한(grant)를 스킵(skip)하고 실행하는 커맨드이다.
해당 커맨드를 입력하면 cmd창이 멈추기 때문에 또 다른 cmd창을 켜주자.



root 계정 접속

여기서부터는 위에서 말한 새로 실행한 cmd에서 작업하는 것이다 !


원래 비밀번호가 있었는데 mysql -u root로도 바로 계정 접속이 되는 것을 볼 수 있다.

그리고 mysql로 이동해줬다.

왜 use mysql을 하지 ?

use mysql로 가는 이유는
MySQL 서버 자체의 설정 및 관리 정보를 포함하는 시스템 데이터베이스에 접근하는 것이라서 이 데이터베이스에는 사용자 계정 및 권한, 데이터베이스 및 테이블의 메타데이터, 그리고 다양한 시스템 설정과 관련된 정보가 포함되어 있다.



비밀번호 변경

빨간색 네모칸에 자신이 원하는 비밀번호를 입력해주면 된다.

FLUSH PRIVILIGES가 뭘까?

환경 설정을 변경할경우, MariaDB(MySQL)의 재시작 없이 변경한 설정부분을 적용시키고자 할 때 사용한다.
비밀번호를 변경하기 전의 FLUSH PRIVILIGES는 앞에 --skip -grant를 끄기 위함이다.
비밀번호를 변경 후의 FLUSH PRIVILIGES는 비밀번호 적용의 위함이다.

FLUSH PRIVILIGES를 해주지 않으면 ?

이런 에러가 뜨는 것을 볼 수 있을 것이다.



로그인 해보기

이제 서비스에서 다시 MariaDB서비스를 시작으로 바꾸고 로그인을 해보면 된다.

변경한 비밀번호로 로그인 했을 때 로그인이 되면 된다 !



마치며

비밀번호를 변경을 하고 서비스에서 MariaDB를 시작하려고 했더니 에러가 났다 ..
이게 무슨 에러인지 아니면 내가 설정을 잘못한건지 ..

그래서 구글링을 하며 찾아보며 따라해보기도 했지만 해결이 되지 않아 삭제했다가 다시 설치하였다.

혹시 내가 오늘 정리한게 잘못되었는지 확인을 해보려고 처음부터 끝까지 똑같이 해보았지만

전혀 문제 없이 잘 변경이 되었다 !

그냥 내가 뭔가 다른 이상한짓을 했나보다.. ㅠ

그래도 오늘 정리한 내용에 잘못된 내용은 없는거 같아서 다행이다 !

그럼 안녕 ~ 🖐🖐

profile
개발자 꿈나무

0개의 댓글