명령 줄을 사용하여 데이터베이스 사용자의 암호를 업데이트하려고하는데 작동하지 않습니다. 이것은 내가 사용하는 코드입니다.
mysql> UPDATE user SET password=PASSWORD($w0rdf1sh) WHERE user='tate256';
누군가이 코드의 문제점을 말해 줄 수 있습니까?
명령 줄을 사용하여 데이터베이스 사용자의 암호를 업데이트하려고하는데 작동하지 않습니다. 이것은 내가 사용하는 코드입니다.
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%";
5.7.18-0ubuntu0.16.04.1
ALTER USER예:
ALTER USER 'username' IDENTIFIED BY 'password';
때문에:
SET PASSWORD ... = PASSWORD('auth_string') 구문은 MySQL 5.7.6에서 더 이상 사용되지 않으며 향후 MySQL 릴리스에서 제거됩니다.
SET PASSWORD ... = 'auth_string'구문은 더 이상 사용되지 않지만 ALTER USER이제 암호를 할당하는 데 선호되는 명령문입니다.
ALTER USER ... IDENTIFIED BY ...정확히 무엇입니까? 방법에서 그 차이가 UPDATE ... SET ...나는 INSERT INTO ...?
ALTER USER ... IDENTIFIED BY ...데이터베이스에 대한 사용자 권한을 구성하는 SQL 문입니다. UPDATE그리고 INSERT, 제안 업데이트 기록과 기록을 삽입하여 데이터베이스의 테이블에 이름이 같은 다른 기능을 가지고있다.
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'USER 'root' IDENTIFIED BY
이것은 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';"
이것은 나를 위해 작동합니다. MYSQL 웹 페이지 에서 솔루션을 얻었습니다.
MySQL에서 아래 쿼리를 실행하십시오.
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'New_Password';
로그인 루트는이어야합니다 /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 호스트입니다.