오류: #1045 - 사용자 'root'@'localhost'에 대한 액세스 거부(비밀번호 사용: YES)
문제
사용자에게 다음이 발생합니다. 일반적으로 MySQL 콘솔이나 phpMyAdmin을 통해 루트 사용자와 비밀번호를 사용하여 MySQL에 연결하려고 하면 액세스 거부 오류가 발생합니다. 구성 파일 config.inc.php가 올바른 자격 증명으로 구성되었지만 여전히 로그인에 실패합니다.
해결 방법
이 문제를 해결하려면 다음 단계를 따르세요.
-
루트 비밀번호 변경:
명령 프롬프트에서 mysql -u root -p를 실행하여 루트 사용자로 MySQL에 연결합니다. 비밀번호를 묻는 메시지가 나타나면 기존 비밀번호를 입력하거나 config.inc.php의 AllowNoPassword 옵션이 true로 설정된 경우 공백으로 남겨두세요.
-
비밀번호 업데이트:
연결되면, 다음 명령을 실행하여 루트 비밀번호를 업데이트하세요.
UPDATE mysql.user SET 인증_string=PASSWORD('MyNewPass') WHERE User='root';
'MyNewPass'를 새 비밀번호로 바꾸세요.
-
config.inc.php 편집:
config.inc.php의 서버 섹션에 있는 비밀번호 필드를 새 비밀번호로 업데이트하세요:
$cfg['Servers'][$i] ['password'] = 'MyNewPass';
-
MySQL 서비스 다시 시작:
MySQL 서비스를 중지했다가 다시 시작합니다.
-
연결 확인:
업데이트된 비밀번호를 사용하여 MySQL에 다시 로그인을 시도하세요.
추가 참고사항
- MySQL 버전 5.7 이상을 사용하는 경우 인증_문자열을 사용해야 합니다. SQL 업데이트 명령에서 비밀번호 대신.
- 문제가 지속되면 MySQL 서비스가 올바르게 실행되고 있는지, 연결을 차단하는 방화벽이나 바이러스 백신 제한 사항이 없는지 확인하세요.
- 별도의 루트 사용자를 사용하는 대신 phpMyAdmin을 사용할 수 있는 제한된 권한을 가진 사용자입니다.
위 내용은 MySQL에 루트로 연결할 때 \'액세스 거부\' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!