> 데이터 베이스 > MySQL 튜토리얼 > MySQL 8.0 인증 오류: '클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다'를 수정하는 방법은 무엇입니까?

MySQL 8.0 인증 오류: '클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다'를 수정하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-12-12 10:32:10
원래의
334명이 탐색했습니다.

MySQL 8.0 Authentication Error: How to Fix

"MySQL 8.0: 인증 오류 해결 - 클라이언트 비호환성"

사용자에게 "클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다" 오류가 발생함 MySQL 8.0에 연결을 시도할 때 이 문제가 자주 발생합니다. 이는 MySQL 클라이언트 버전이 MySQL 서버에서 사용하는 인증 프로토콜과 호환되지 않을 때 발생합니다.

문제 이해

MySQL 8.0에는 SCRAM-이라는 새로운 인증 방법이 도입되었습니다. SHA-256. MySQL 클라이언트가 이 방법을 지원하지 않으면 연결 설정에 실패하여 위에서 언급한 오류가 발생합니다.

해결책:

1. 클라이언트 호환성 확인:

MySQL 클라이언트 버전이 MySQL 8.0과 호환되는지 확인하세요. 그렇지 않은 경우 클라이언트를 최신 버전으로 업그레이드하세요.

2. 사용자 인증 재설정:

MySQL Workbench 또는 다른 도구를 사용하여 다음 쿼리를 실행합니다.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;
로그인 후 복사

'root' 및 'password'를 실제 사용자 이름과 비밀번호로 바꾸십시오. , 각각

3. 연결 재시도:

제공된 node.js 코드를 사용하여 MySQL 서버에 다시 연결을 시도합니다. 이제 클라이언트에서 SCRAM-SHA-256 인증 방법을 지원하면 연결이 성공적으로 설정됩니다.

4. 대체 수정:

위 단계로 문제가 해결되지 않으면 ALTER USER 쿼리의 사용자 사양에서 @'localhost' 부분을 제거하세요. 예:

ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY 'password';
로그인 후 복사

5. 활성 연결 확인:

MySQL 콘솔을 확인하거나 다음 쿼리를 실행하여 연결이 활성 상태인지 확인하세요.

SELECT USER();
로그인 후 복사

사용자 이름이 반환되면 연결이 성공적으로 설정된 것입니다. .

위 내용은 MySQL 8.0 인증 오류: '클라이언트가 서버에서 요청한 인증 프로토콜을 지원하지 않습니다'를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿