ProgramingTip

명령 줄을 사용하여 mysql 사용자 비밀번호 변경

bestdevel 2020. 10. 16. 07:42
반응형

명령 줄을 사용하여 mysql 사용자 비밀번호 변경


명령 줄을 사용하여 데이터베이스 사용자의 암호를 업데이트하려고 작동하지 않습니다. 이것은 내가 사용하는 코드입니다.

mysql> UPDATE user SET password=PASSWORD($w0rdf1sh) WHERE user='tate256';

당신의 목소리가 내 고객에게 있습니까?


코드에서 작은 따옴표 안에 암호를 넣습니다. 또는 mysql 설명서 에 따라 다음이 작동합니다.

SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('cleartext password');

FLUSH PRIVILEGES;

마지막 줄이 중요하지 않습니다. 암호 변경이 안타깝게도 적용되지 않습니다.

편집하다 :

내 지역에서 테스트를 실행했는데 효과가 있습니다.

mysql>  set password for 'test' = PASSWORD('$w0rdf1sh');
Query OK, 0 rows affected (0.00 sec)

Mine은 버전 5입니다. 다음 명령을 사용하여 버전을 확인할 수 있습니다.

SHOW VARIABLES LIKE "%version%";

MySQL 5.7.6부터 ALTER USER

예 :

ALTER USER 'username' IDENTIFIED BY 'password';

때문에 :

  • SET PASSWORD ... = PASSWORD('auth_string') 구문은 MySQL 5.7.6에서 더 이상 사용되지 않습니다.

  • SET PASSWORD ... = 'auth_string'구문은 더 이상 사용되지 않지만 ALTER USER이제 암호를 할당하는 데 선호되는 명령문입니다.


참고 : 루트 사용자로 로그인해야합니다.

 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your password');

이것은 WAMP v3.0.6에 대한 업데이트 된 답변입니다.

UPDATE mysql.user 
SET authentication_string=PASSWORD('MyNewPass') 
WHERE user='root';

FLUSH PRIVILEGES;

MySQL 5.7.6 이전에는 명령 줄에서 작동합니다.

mysql -e "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('$w0rdf1sh');"

테스트 할 mysql 설치가 없지만

mysql -e "UPDATE mysql.user SET Password=PASSWORD('$w0rdf1sh') WHERE User='tate256';"

Windows 10에서는 현재 로그인을 종료하고 명령 줄에서 실행하십시오.

-> mysqladmin -u root password “newpassword”

루트 대신 모든 사용자가 될 수 있습니다.


로그인 루트는 있어야합니다 /usr/local/directadmin/conf/mysql.conf. 그런 다음 다음을 시도하십시오

UPDATE mysql.user SET password=PASSWORD('$w0rdf1sh') WHERE user='tate256' AND Host='10.10.2.30';
FLUSH PRIVILEGES;

호스트는 mysql 호스트입니다.

참고 URL : https://stackoverflow.com/questions/22774739/change-mysql-user-password-using-command-line

반응형