[MySQL] mysql root 비밀번호 초기화 (mysql 8)
ㅎㅎ 인코딩 설정하다가 뭔가가 꼬여, 비밀번호 초기화가 필요했다.
① 설정 > 시스템에서 Mysql80 시스템을 종료하거나
cmd를 관리자 권한으로 열어
>> net stop MySql80
② mysql이 program Files에, Program Data에 모두 존재할텐데 Program Data의 MySQL 폴더를 선택해준다.
Data 폴더까지 들어가 해당 경로를 복사한다.
>> mysqld --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data" --console --skip-grant-tables --shared-memory
이렇게 되면 sql에 패스워드 없이 접속 가능하다!
③ 그후 cmd를 또 같은 방식으로 열어서 mysql에 접속한다.
비밀번호 변경전, UPDATE 명령어로 우선 user 비밀번호를 null로 설정하고 종료해주자.
>> mysql -u root
>> use mysql;
>> UPDATE user SET authentication_string=null WHERE User='root';
>> select authentication_string from user;
>> flush privileges;
>> quit
④ 비밀번호 재설정
mysql 접속후
>> ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '123456';
>> use mysql
>> select authentication_string from user;
명령어를 통해 비밀번호를 재설정하자. 나는 123456으로 !
select 명령어를 통해 NULL로 바뀌었던 비밀번호가 암호화 되어 저장된 모습을 볼 수 있다.
⑤ 해당 창을 종료하고 맨 처음 켜 두었던 cmd에서
>> net start mysql80
로 다시 서비스를 시작하자.
나는 ^^ 보시다시피 또 다른 오류가 생겼다.
이 다음 포스팅에서 해결해보도록 하자 ㅎㅎ