MySql 루트 비밀번호 변경

MySql 루트 비밀번호 변경

MySql의 루트 비밀번호를 변경하는 것이 맞습니까?

echo "use mysql; update user set password=PASSWORD("NEWPASSWORD") where User='root'; flush privileges; quit;" | mysql -u root -pOLDPASSWORD

나는 보았다이 문서그리고 몇 가지 다른 것들도 있었지만 몇 줄에서 "간단한"명확한 답을 찾지 못했습니다.

그리고 mysql이 작업을 수행하기 전에 서버를 중지했다가 다시 시작해야 합니까? (Debian에서 mysql stopor 을 시도했지만 mysql -uroot -pOLDPASSWORD stop둘 다 작동하지 않았습니다).


참고: mysql -V주어진 mysql Ver 14.14 Distrib 5.5.40, for debian-linux-gnu (x86_64).

답변1

이를 수행하는 올바른 명령은 다음과 같습니다.

mysql -uroot -poldp4ssw0rd -e "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newp4ssw0rd');"

우리가 말하면oldp4ssw0rd그리고새로운 p4ssw0rd기존 비밀번호와 새 비밀번호입니다.

언제든지 MySQL 서버를 중지하거나 다시 시작할 필요가 없습니다. 실제로 서비스에 연결하고 위 명령을 실행하려면 서비스가 실행 중이어야 합니다.

참고: 이 명령을 사용하면 문제가 해결될 수 있지만 일반적으로 로그인한 다른 사용자가 볼 수 있으므로 암호를 명령줄 인수로 전달하는 것은 좋지 않습니다.

관련 정보