답변[re] nas2 mysql root 패스워드 변경
안녕하세요~ 오범석 고객님, ipTIME 기술팀 입니다.
원하시는 00123으로 root 패스워드를 변경해 드렸습니다.
원인은 Remote 접속(host가 %인 라인)에 대한 정보가 입력되지 않아서 입니다.
수정 이전 상황을 보면 아래와 같습니다.
+-----------+------+-------------------------------------------+
| host | user | password | +-----------+------+-------------------------------------------+
| localhost | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| NAS1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| 127.0.0.1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| ::1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| localhost | | |
| NAS1 | | |
| % | | | +-----------+------+-------------------------------------------+
즉 root에 대한 패스워드 지정은 되어 있지만, 이는 localhost에 대한 정의만 되어 있고, Remote(%)에 대한 정의가 되어 있지 않아 비밀번호가 없는것과 같이 root로 로그인이 된 것 입니다.
즉 다른 터미널에서 원격으로 접속할 때에는 % 에 대한 root 비밀번호 지정이 필요하므로 아래와 같이 명령해야 합니다.
update user set user='root', password=password('00123') where host='%'; flush privileges;
이와 같이 변경하여 수정한 결과는 아래와 같습니다. +-----------+------+-------------------------------------------+
| host | user | password | +-----------+------+-------------------------------------------+
| localhost | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| NAS1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| 127.0.0.1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| ::1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| localhost | | |
| NAS1 | | |
| % | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 | +-----------+------+-------------------------------------------+
이로서 Remote MySQL 접속에 대한 %도 동일하게 root에 00123(암호화 됨)으로 접속할 수 있게 되었습니다.
감사합니다.
>use mysql;
update user set password=password('00123') where user='root';
flush privileges;
라고 쿼리를 날렸고 그다음 접속이 안되는데요 왜그러는건가요?
아래에도 질문을 드렸는데 잘된다고만 말씀하셔서요..? 잘되는걸 몰라그러는게 아니라 잘되는걸 알려달라고 글을 썼습니다만?
덕분에 저는 nas를 또 공장초기화로 돌려야 하네요..? mysql root 패스워드 분실시 mysql만 재설치가 되나요?
원하시는 00123으로 root 패스워드를 변경해 드렸습니다.
원인은 Remote 접속(host가 %인 라인)에 대한 정보가 입력되지 않아서 입니다.
수정 이전 상황을 보면 아래와 같습니다.
+-----------+------+-------------------------------------------+
| host | user | password | +-----------+------+-------------------------------------------+
| localhost | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| NAS1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| 127.0.0.1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| ::1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| localhost | | |
| NAS1 | | |
| % | | | +-----------+------+-------------------------------------------+
즉 root에 대한 패스워드 지정은 되어 있지만, 이는 localhost에 대한 정의만 되어 있고, Remote(%)에 대한 정의가 되어 있지 않아 비밀번호가 없는것과 같이 root로 로그인이 된 것 입니다.
즉 다른 터미널에서 원격으로 접속할 때에는 % 에 대한 root 비밀번호 지정이 필요하므로 아래와 같이 명령해야 합니다.
update user set user='root', password=password('00123') where host='%'; flush privileges;
이와 같이 변경하여 수정한 결과는 아래와 같습니다. +-----------+------+-------------------------------------------+
| host | user | password | +-----------+------+-------------------------------------------+
| localhost | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| NAS1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| 127.0.0.1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| ::1 | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 |
| localhost | | |
| NAS1 | | |
| % | root | *C758A4CED399F282677BD6CB186A7690AAB2AA43 | +-----------+------+-------------------------------------------+
이로서 Remote MySQL 접속에 대한 %도 동일하게 root에 00123(암호화 됨)으로 접속할 수 있게 되었습니다.
감사합니다.
>use mysql;
update user set password=password('00123') where user='root';
flush privileges;
라고 쿼리를 날렸고 그다음 접속이 안되는데요 왜그러는건가요?
아래에도 질문을 드렸는데 잘된다고만 말씀하셔서요..? 잘되는걸 몰라그러는게 아니라 잘되는걸 알려달라고 글을 썼습니다만?
덕분에 저는 nas를 또 공장초기화로 돌려야 하네요..? mysql root 패스워드 분실시 mysql만 재설치가 되나요?







































