> 데이터 베이스 > MySQL 튜토리얼 > MySQL 오류 ''root'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES)'를 해결하는 방법은 무엇입니까?

MySQL 오류 ''root'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES)'를 해결하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-12-25 05:30:17
원래의
674명이 탐색했습니다.

How to Resolve the MySQL Error

미스터리 풀기: '사용자 'root'@'localhost'에 대한 액세스 거부(비밀번호 사용: YES)' 해결'

오류 메시지 "'root'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES) - 권한이 없습니까?" 루트 사용자로 MySQL 데이터베이스에 연결을 시도할 때 발생할 수 있습니다. 이러한 실망스러운 문제는 루트 사용자의 스키마 권한이 null이고 모든 액세스 권한이 효과적으로 취소될 때 발생합니다.

문제의 근본 원인 추적

MySQL Workbench를 자세히 살펴보면, 루트 사용자의 스키마 권한이 실제로 누락되었음을 발견했습니다. 이는 FLUSH HOSTS 및 FLUSH PRIVILEGES와 같은 표준 명령이 결과를 생성하지 않는 이유를 설명합니다.

루트 액세스 회수: 단계별 가이드

  1. 사용자 및 인증 설정 확인:

실행 "SELECT user, 인증_문자열, 플러그인, 호스트 FROM mysql.user;" 쿼리 인증 방법을 결정합니다. 루트 사용자에 대해 'auth_socket'이 표시되면 서버에 대한 루트 액세스가 필요한 소켓 인증이 사용되고 있음을 나타냅니다.

  1. 사용자 인증 수정:

비밀번호로 연결을 허용하려면 'localhost'에서 루트 사용자의 인증_문자열 값을 다음으로 업데이트하세요. 인증하려면 비밀번호가 필요한 'mysql_native_password'.

  1. 루트 비밀번호 설정:

"ALTER USER 'root'@ 명령을 사용합니다. 'localhost'는 '현재 루트-비밀번호'에 의해 mysql_native_password로 식별됩니다." 루트 비밀번호를 설정합니다.

  1. 권한 부여:

필요한 경우 GRANT 명령을 사용하여 루트 사용자에게 적절한 권한을 부여합니다.

  1. 플러시 권한:

"FLUSH PRIVILEGES;" 실행 변경 사항이 적용되는지 확인하세요.

  1. 변경 사항 확인:

사용자 정보 쿼리를 다시 실행하여 이제 루트 사용자에게 'mysql_native_password'가 있는지 확인하세요. 인증 및 원하는 권한을 부여합니다.

이 단계를 수행하면 루트 액세스를 복원할 수 있습니다. MySQL 데이터베이스를 완벽하게 제어할 수 있습니다.

위 내용은 MySQL 오류 ''root'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES)'를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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