나는 이것이 mysql 루트 암호를 변경하거나 재설정하는 가장 안전한 방법이라는 것을 알고 있습니다. 설치 프로그램에서 10 번 중 8 번이 루트 암호를 요구하지 않기 때문에이 작업을 수행하고 있습니다.mysql 루트 암호 재설정
그래서 내가 명령을 실행 : 다음
sudo /etc/init.d/mysql stop
sudo mysqld_safe --skip-grant-tables &
sudo mysql -u root
use mysql;
를, MySQL의 또는 마리아의 버전에 따라 사용중인 당신은 입력에서
update user set password=PASSWORD("mynewpassword") where User='root';
또는
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
내 첫 번째 입력. 그런 다음 권한을 새로 고침 : flush privileges;
그리고 나서 mysql을 입력하여 종료합니다 : quit
.
이 시점에서 모든 것이 잘되었습니다. 그런 다음 mysql 서버를 다음과 같이 다시 시작합니다. sudo /etc/init.d/mysql start
터미널에서 "OK"가 표시됩니다. 내가 루트로 로그인 할 때 그러나, 내 말은 적절한 오류 메시지 : ERROR 1698 (28000): Access denied for user 'root'@'localhost'
내가 올바른 암호를 입력하고있어 것을 100 % 확신한다. 왜 이런 일이 일어나는 걸까요?
왜 첫 번째 방법을 사용 했습니까? 두 번째 방법이 더 안전 해 보입니다. – Barmar
내가 말했듯이, 첫 번째 방법은 아마 내 버전의 MySQL에서 작동합니다. 나는 다른 하나도 시도 할 수 있다고 생각하지만 작동해서는 안됩니다. –
네가 잘못하고있는 것을보기가 어렵다. 하지만 매번 니켈을 먹으면 누군가가 100 % 자신이 옳은 것을 입력했다고 확신한다고 말했습니다 ... – Barmar