phpMyAdmin을 MySQL 8.0에 연결할 때 \'클라이언트에 알 수 없는 인증 방법\' 오류를 어떻게 해결할 수 있습니까?

Barbara Streisand
풀어 주다: 2024-11-23 22:41:10
원래의
321명이 탐색했습니다.

How Can I Fix the

phpMyAdmin과 MySQL 8.0의 호환성 탐색

데이터베이스 관리 영역에서 phpMyAdmin은 여전히 ​​인기 있는 도구입니다. 그러나 MySQL이 최신 버전인 8.0으로 발전함에 따라 사용자는 phpMyAdmin 연결 문제에 직면할 수 있습니다.

발생한 오류:

phpMyAdmin에 액세스하려고 할 때 사용자는 종종 다음과 같은 문제를 겪게 됩니다. 다음 오류:

#2054 - The server requested authentication method unknown to the client
로그인 후 복사

이 오류는 MySQL에 적용된 강화된 보안 조치로 인해 발생합니다. 8.0은 더욱 강력한 비밀번호 해싱 메커니즘을 도입합니다.

해결책:

이 문제를 해결하려면 MySQL 인스턴스 내에서 루트 사용자에 대해 지정된 인증 방법을 변경해야 합니다. :

  1. MySQL 콘솔에 루트로 로그인합니다. 사용자:
root@9532f0da1a2a:/# mysql -u root -pPASSWORD
로그인 후 복사
  1. 인증 플러그인 변경:
mysql> ALTER USER root IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
로그인 후 복사

인증 플러그인을 ' mysql_native_password'를 사용하여 호환성을 활성화합니다. phpMyAdmin.

Docker 환경 솔루션:

Docker 컨테이너를 사용하는 경우:

docker run --name mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -p 3306:3306 -d mysql:latest

docker exec -it mysql bash

mysql -u root -pPASSWORD

ALTER USER root IDENTIFIED WITH mysql_native_password BY 'PASSWORD';

exit

exit

docker run --name phpmyadmin -d --link mysql:db -p 8080:80 phpmyadmin/phpmyadmin:latest
로그인 후 복사

추가 고려 사항:

mysql/mysql-server 도커 image:

이 docker 이미지의 경우 /etc/my.cnf에서 다음 줄의 주석 처리를 제거하세요.

# default-authentication-plugin=mysql_native_password
로그인 후 복사

또는 다음 해결 명령을 수행할 수도 있습니다. 사용됨:

docker run --name mysql -e MYSQL_ROOT_PASSWORD=PASSWORD -e MYSQL_ROOT_HOST=% -p 3306:3306 -d mysql/mysql-server:latest
docker exec -it mysql sed -i -e 's/# default-authentication-plugin=mysql_native_password/default-authentication-plugin=mysql_native_password/g' /etc/my.cnf
docker stop mysql; docker start mysql
docker run --name phpmyadmin -d --link mysql:db -p 8080:80 phpmyadmin/phpmyadmin:latest
로그인 후 복사

default_authentication_plugin:

업데이트된 솔루션(2021년 9월 13일):

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

주의사항: 다음 사항을 확인하세요. 따옴표를 포함하세요.

위 내용은 phpMyAdmin을 MySQL 8.0에 연결할 때 \'클라이언트에 알 수 없는 인증 방법\' 오류를 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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