[mysql] MySQL 루트 비밀번호 변경

MySQL 루트 비밀번호를 재설정하려고했습니다. mysqld_safe –skip-grant-tables를 실행하고 루트 비밀번호를 업데이트하고 사용자 테이블이 있는지 확인했습니다. mysql 데몬을 다시 시작하면 방금 설정 한 새 루트 암호로 로그인을 시도했지만 사용자 ‘루트’오류로 인해 액세스가 거부되었습니다. 또한 mysql (my.cnf 파일 제거 포함)을 완전히 제거하고 다시 설치하려고 시도했지만 여전히 운이 없습니다. 다음에 무엇을 할 수 있는지에 대한 제안이 있습니까?

미리 감사드립니다



답변

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mypass');
FLUSH PRIVILEGES;


답변

MySQL 참조 설명서에서 이것을 살펴보십시오.

첫 번째 로그인 mysql :

# mysql -u root -p

그런 다음 mysql 프롬프트에서 다음을 실행하십시오.

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

그때

FLUSH PRIVILEGES;

자세한 내용은이 페이지를 참조하십시오. 루트 암호 재설정 : Unix 시스템


답변

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

MySQL 문서에서 루트 암호 재설정 을 찾을 수 있습니다 .


답변

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

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

> FLUSH PRIVILEGES;

MySQL 버전 5.7.x에서는 mysql 테이블에 더 이상 비밀번호 필드가 없습니다. authentication_string으로 대체되었습니다. (터미널 / CLI 용)

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

FLUSH PRIVILEGES;

(PHPMyAdmin 또는 Mysql GUI의 경우)


답변

그것을 발견! 암호를 변경할 때 해시하는 것을 잊었습니다. 이 쿼리를 사용하여 문제를 해결했습니다.

update user set password=PASSWORD('NEW PASSWORD') where user='root';

잊고 PASSWORD('NEW PASSWORD')새 비밀번호를 일반 텍스트로 입력했습니다.


답변

아래 단계를 따르십시오.

1 단계. MySQL 중지

2 단계. sudo mysqld_safe --skip-grant-tables

step3.mysql -u root

step4.use mysql;

step5.show tables;

step6.describe user;

step7.update user set authentication_string=password('1111') where user='root';

비밀번호 1111로 로그인


답변

나도 주변을 검색했는데 어떤 상황에 맞는 답변도있을 것 같지만

내 상황은 Ubuntu 18.04.2 LTS 시스템의 Mysql 5.7입니다.

(루트 권한 얻기)

$ sudo bash

(루트 db 사용자의 비밀번호 설정 + 단계적으로 보안 구현)

# mysql_secure_installation

(소켓 대신 암호를 통해 루트 사용자에게 액세스 권한 부여)

(+ 편집 : 분명히 암호를 다시 설정해야합니까?)

( ‘mySecretPassword’로 설정하지 마십시오 !!!)

# mysql -u root

mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> set password for 'root'@'localhost' = PASSWORD('mySecretPassword');
mysql> FLUSH PRIVILEGES;
mysql> exit;

# service mysql restart

에 많은 감사 zetacu (그리고 에리히 용) 이 우수한 대답 (몇 시간을 검색 후 …)

즐기세요 😀

에스.

편집 (2020) :

이 방법은 더 이상 작동하지 않습니다. 나중에 참조 하려면 이 질문 을 참조하십시오.