logo

English

이곳의 프로그래밍관련 정보와 소스는 마음대로 활용하셔도 좋습니다. 다만 쓰시기 전에 통보 정도는 해주시는 것이 예의 일것 같습니다. 질문이나 오류 수정은 siseong@gmail.com 으로 주세요. 감사합니다.

MacOS mysql 비밀번호 분실 시 재설정하기

by digipine posted Nov 14, 2017
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

MySQL을 설치할 때 임시 Password를 부여하는 이것을 무시하고 설치했거나 정말로 비밀번호를 잊어버렸을때에 재설정하는 방법을 설명합니다.

아래와 같이 입력하면 인증을 생략하고 안전모드로 데몬을 실행한다. 즉, 비밀번호 없이도 MySQL에 접속할 수 있게 된다. (여기서도 많이 헤맸다. 해당 경로로 이동해서 그대로 mysqld_safe –skip-grant-tables 명령어를 치면 실행할 수 없는 명령이라고 나오는데, 반드시 관리자 권한(sudo)로 실행하고 경로에도 ./를 붙여서 실행해야 한다) 그리고 이 단계에서 비밀번호를 물어보는 건 MySQL 비밀번호가 아닌 맥의 관리자 비밀번호다.

sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables

위 명령어는 실행된 상태로 유지되므로 새로운 터미널 창을 열어서 MySQL에 접속한다. 이제 비밀번호를 묻지 않고 바로 접속이 된다. (예이!) 만약 접속이 잘 안 된다면 방금 전 실행한 명령어가 완전히 실행되었는지(=바람개비가 다 사라졌는지) 확인한다.

/usr/local/mysql/bin/mysql -uroot

접속한 뒤에는 아래와 같이 비밀번호를 root로 변경한다. password=(‘root’)에 root 대신 원하는 비밀번호를 입력해도 된다. (참고로 5.7 버전 이전에는 set password=password(‘원하는 비밀번호’)였는데 컬럼명이 바꼈다.1 굳이 바뀐 컬럼명을 직접 보고자 한다면 use mysql;을 하고 show full columnes from user;를 치면 된다.)

mysql> use mysql; 
mysql> update user set authentication_string=password('root') where user='root';

마지막으로 변경사항을 적용하기 위해 flush privileges 명령어를 실행한다.

mysql> flush privileges;

MySQL 접속하기

다시 MySQL에 접속하면 잘 되는 것을 확인할 수 있다. 만약 접속이 거부되면 -uroot -proot와 같이 비밀번호까지 붙여서 한번에 실행하는 것을 시도한다.

/usr/local/mysql/bin/mysql -uroot
/usr/local/mysql/bin/mysql -uroot -proot

그런데 접속 후 명령을 실행하게 되면 다음과 같은 에러가 발생한다. ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 이 경우 아래 명령어를 실행하면 정상적으로 MySQL 명령을 실행할 수 있다.

mysql> use mysql; 
mysql> set password = password('원하는 비밀번호');
이제 MySQL 데몬을 종료하고 재시작하면 된다.
# ps -e | grep mysql 
# kill -9 [P_ID]
위와 같이 mysql 프로세스들을 모두 kill 해 준후 재시작하면된다. 아니면 맥을 재부팅 하거나..
TAG •

List of Articles
No. Subject Author Date Views
56 Core Audio를 사용하여 macOS에서 Audio를 Capture하는 코드 digipine 2024.04.19 462
55 macOS Daemon 관련 시스템 폴더 목록 lizard2019 2024.03.08 469
54 Firebase 'GoogleUtilities/GULURLSessionDataResponse.h' file not found Error Fix lizard2019 2023.07.04 635
53 [macOS] Xcode 디버깅 시 Could not attach pid 오류 해결 file lizard2019 2023.06.05 1357
52 [macOS, iOS] 개발자 정보 확인하는 명령어 digipine 2023.03.23 422
51 [macOS] 현재 사용 중인(열려있는) 포트 확인하고 Close 하기 digipine 2022.10.24 624
50 [iOS] Audio Session Setting digipine 2021.11.26 712
49 [iOS] 개발자를 위한 iOS 15의 새로운 기능 file digipine 2021.11.04 759
48 [iOS/macOS] 사설 인증서를 사용한 SSL HTTPS 통신 시 우회처리 digipine 2021.07.06 3653
47 [MacOS] Terminal 에서 zsh compinit: insecure directories 경고 제거하기 lizard2019 2021.04.30 833
46 Concurrent vs Serial DispatchQueue: Concurrency in Swift explained lizard2019 2021.04.16 671
45 WatermelonDB 'jsi/jsi.h' file not found 문제 해결 file digipine 2021.04.06 944
44 [iOS/Objective-C] __weak, __block 사용법 digipine 2021.02.16 5821
43 macOS ARP Spoofing Attack file digipine 2020.09.17 937
42 The distance estimate iBeacon signal strength lizard2019 2019.10.25 939
41 [MacOS, Swift] 스크롤뷰, NSScrollView 사용법 엉뚱도마뱀 2018.11.01 1733
40 [swfit 4] 스위프트 Swift 동시성 동기화 정리 엉뚱도마뱀 2018.09.06 1571
39 [swift 4] 변경 사항 정리 file 엉뚱도마뱀 2018.07.23 1291
38 [Objective-C] NSOperation과 NSOperationQueue를 사용하는 방법 - 설명 및 예제 엉뚱도마뱀 2018.03.14 4497
» MacOS mysql 비밀번호 분실 시 재설정하기 digipine 2017.11.14 1239
Board Pagination Prev 1 2 3 Next
/ 3