Mysql root 비밀번호 setup error
Ubuntu에서 Mysql 설정을 위해 mysql_secure_installation을 시작하면 root 비밀번호를 설정하는 상황이 나옵니다. 비밀번호를 설정했더니 다음과 같은 에러가 뜹니다.
... Failed! error: SET PASSWORD has no significance for user 'root'@'localhost' as the authentication method used doesn't store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters.
secure_installation에서 비밀번호를 설정하면 root 권한이 아닌 상태로 비밀번호를 설정했기 때문에 root 권한으로 비밀번호를 설정하라는 뜻입니다.(설정을 하라는대로 했으면 되야 하는 거 아니니??)
이게 웃긴 상황인데 secure_installation 에서 비밀번호를 설정하면 root 권한이 아니라서 아무리 비밀번호를 설정해도 root 비밀번호 설정을 하는게 아니라서 꼬여버립니다. root 권한으로 들어가지도 못하면서 secure_installation에서 root 비밀번호를 설정하라는 말도 안되는 설정 때문에 생기는 오류입니다. 속지마시고 mysql을 켜서 root 비밀번호를 직접 설정합니다. 다음과 같이 해서 해결합니다.
1. 해당 터미널 창을 꺼서 mysql_secure_installation 을 꺼버립니다.(열려있으면 root로 인지 하지 않음)
2. 다시 터미널 창을 켠 후 sudo mysql을 입력해 mysql에 들어갑니다.
3. 다음과 같이 해서 비밀번호를 변경합니다. 비밀번호를 만들때에도 비밀번호 정책에 맞게 해주어야 합니다. 대소문자, 숫자, 특수문자를 섞어 넣어서 8자이상으로 만들어야 합니다.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '새로운비밀번호';
비밀번호 수준은 다음과 같습니다.
0 = LOW, 1= MEDIUM, 2=STRONG
- LOW : 8자 이상
- MEDIUM : 숫자, 대소문자 섞은 글자, 특수문자 섞어 8자 이상
- STRONG : 숫자, 대소문자, 특수문자, 사전에 없는 단어
만들고자 하는 비밀번호의 수준을 선택한 후 비밀번호를 입력합니다.
비밀번호를 입력하면 stong password 수준을 얘기해줍니다.
잘 되었다면 Query OK 가 나옵니다.
4. mysql을 나온후 다시 mysql_secure_installation을 켜서 설정을 진행합니다. 비밀번호 입력하고 들어가면 비밀번호를 바꿀지를 물어보는데 n을 눌러 다음 스텝으로 넘어가시기 바랍니다.
Y를 누르면 다시 비밀번호를 설정하는 란으로 바뀌고 비밀번호를 바꾸면 다시 오류가 나와면서 무한반복이 됩니다. 위 과정을 처음부터 다시 해야합니다.
'데이터 사이언스 > DB' 카테고리의 다른 글
Can't connect to local MySQL server through socket (2) 해결 (0) | 2022.08.17 |
---|---|
[Ubuntu] mysql 설치(wsl에서의 방법포함) (0) | 2022.08.13 |
MySQL 비밀번호 변경(리눅스) (0) | 2022.08.09 |
DB browser for sqlite 설치 및 사용법 (0) | 2022.01.24 |
[SQLite3] 행 추가,삭제,조회 (0) | 2021.08.26 |