본문 바로가기
개발/Database

Mysql 비번 초기화

by 안뇽! 2023. 7. 14.
반응형

카카오로그인을 만들면서 mysql을 접속하는데 mysql 비번을 잊었다.

access denied for user ''@'localhost' (using password: no)

비번을 찾을 수 없어서 초기화를 시도했다.

 

하루 반 동안 brew로 mysql을 삭제하고 재설치하고, mysqld_safe --skip-grant-tables & 를 입력하고 돌아가는 mysql을 다 kill 해봤지만 해결되지 않았다.

 

mysqld_safe --skip-grant-tables : mysql의 엑세스 권한을 무제한으로 변경

 

터미널에 which mysql 입력하면 mysql이 어디에 설치되어있는지 찾을 수 있다.

 

나같은 경우는 brew로 mysql을 설치했기 때문에 /opt/homebrew/bin 에 mysql이 있었다.

 

인터넷에 보니까 my.cnf에 들어가서 직접 --skip-grant-tables를 찾으라 했다.

 

my.cnf를 찾기 위해 sudo find / -name my.cnf 를 입력했다. 끝도 없이 나와서 sudo find /etc -name my.cnf 로 탐색범위를 재조정 했다.

/opt/homebrew/etc에서 my.cnf가 있었다.

my.cnf에 들어가서 다음과 같이 [mysqld] 아랫줄에 skip-grant-tables를 추가해주었다.

 

[mysqld]
skip-grant-tables

이렇게 하면 MySQL 서버가 시작될 떄 사용자 인증을 건너뛰고 모든 사용자가 무제한 엑세스 권한을 갖게 된다.

 

이 후에 brew services restart mysql을 입력하여 mysql을 재시작하였다.

 

그리고 mysql -u root 를 입력하니 접속되었다.

반응형

'개발 > Database' 카테고리의 다른 글

MYSQL에서 Split하기 : SUBSTRING_INDEX  (0) 2022.04.03
외부조인  (0) 2022.03.09
DISTINCT 중복된 결과중 1개만 출력  (0) 2022.03.08
내부조인 외부조인  (0) 2022.03.08
MySQL 변수사용  (0) 2022.02.25