PHP에서 MySQL 데이터베이스에 연결할 때 사용자에게 "SQLSTATE[HY000] [2054] 오류가 발생할 수 있습니다. 서버가 클라이언트에게 알려지지 않은 인증 방법을 요청했습니다." 이 문제는 MySQL에서 사용하는 인증 방법과 클라이언트 애플리케이션에서 예상하는 방법이 일치하지 않기 때문에 발생합니다.
원인:
MySQL 8.0에는 기본 인증 플러그인이 도입되었습니다. caching_sha2_password라고 하며 이는 이전 PHP 버전이나 일부 클라이언트 응용 프로그램에서는 기본적으로 지원되지 않습니다. 기본적으로 애플리케이션은 비밀번호 기반 방법을 사용하여 인증할 것으로 예상하지만 MySQL 8.0에서는 caching_sha2_password 플러그인을 사용해야 합니다.
해결책:
오류를 해결하려면, 애플리케이션에서 예상하는 방법과 일치하도록 MySQL에서 사용하는 인증 방법을 수정해야 합니다. 다음 단계를 따르세요.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
'password'를 루트로 바꾸세요. 비밀번호를 입력하세요.
추가 참고:
위 내용은 PHP를 MySQL 8.0에 연결할 때 '인증 방법 불일치' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!