> 백엔드 개발 > PHP 튜토리얼 > MySQL 4.1 데이터베이스에 연결할 수 없는 이유는 무엇입니까?

MySQL 4.1 데이터베이스에 연결할 수 없는 이유는 무엇입니까?

Patricia Arquette
풀어 주다: 2024-11-03 18:24:03
원래의
1007명이 탐색했습니다.

Why Can't I Connect to My MySQL 4.1  Database?

MySQL 4.1 연결 시 인증 문제 해결

bluesql.net에서 호스팅되는 MySQL 데이터베이스에 연결하려고 하면 오류가 발생할 수 있습니다. mysqlnd가 이전 인증을 사용하여 연결할 수 없음을 나타냅니다. 이 오류는 4.1 이후 MySQL 버전에서 이전 비밀번호 체계가 중단되면서 발생합니다. 최신 버전에서는 이전 버전과의 호환성을 허용하지만 때때로 연결 문제가 발생할 수 있습니다.

이 문제를 해결하려면 다음 쿼리를 실행하여 서버가 이전 비밀번호 스키마를 사용하도록 설정되어 있는지 확인할 수 있습니다.

SHOW VARIABLES LIKE 'old_passwords';
로그인 후 복사

old_passwords,Off를 반환하는 경우 문제가 사용자 테이블의 이전 비밀번호 항목에 있을 수 있음을 의미합니다. 서버는 이러한 계정에 대해 이전 인증 루틴을 기본값으로 사용합니다. 이 문제를 해결하려면 새 비밀번호를 설정해야 하며, 이를 통해 새 루틴 채택이 시작됩니다.

특정 계정에서 사용하는 인증 루틴을 확인하려면 mysql.user 테이블을 쿼리할 수 있습니다.

SELECT `User`, `Host`, Length(`Password`) FROM mysql.user;
로그인 후 복사

이 쿼리는 비밀번호 길이를 반환합니다. 길이가 16이면 이전 비밀번호를 나타내고 41은 새 비밀번호를 나타냅니다.

비밀번호가 오래된 경우 MySQL 관리 도구를 사용하거나 다음 쿼리를 실행하여 업데이트할 수 있습니다.

SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword');
FLUSH Privileges;
로그인 후 복사

사용자와 호스트를 이전 쿼리에서 얻은 값으로 바꿔야 합니다. 이 쿼리를 실행한 후 비밀번호 길이를 다시 확인하세요. 이제 41이 되어야 클라이언트가 성공적으로 연결할 수 있습니다.

위 내용은 MySQL 4.1 데이터베이스에 연결할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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