MySQLi를 사용하여 이전 인증으로 MySQL 4.1에 연결
MySQLi를 사용하여 MySQL 데이터베이스에 연결을 설정하려고 하면 다음과 같은 문제가 발생할 수 있습니다. 다음 오류:
Connect Error (2000) mysqlnd cannot connect to MySQL 4.1+ using old authentication
이 오류는 MySQL 4.1 이전 버전에서 오래된 비밀번호 해싱 체계를 사용했기 때문에 발생합니다. 최신 버전에서는 기존 비밀번호를 사용할 수 있지만 앞서 언급한 문제가 발생할 수 있습니다.
이 문제를 해결하려면 다음 단계를 따르세요.
확인하세요. 서버 설정:
SQL 쿼리를 실행합니다. SHOW VARIABLES LIKE 'old_passwords'; 서버가 이전 비밀번호 체계(old_passwords,Off)를 기본값으로 설정하는지 확인합니다.
이전 비밀번호가 있는 계정 식별:
쿼리 사용 사용자`, `호스트`, 길이(`비밀번호`) FROM mysql.user`를 선택하여 사용자 계정과 비밀번호 길이를 나열합니다. 비밀번호 길이가 16인 계정은 기존 방식을 사용하고, 길이가 41이면 새 비밀번호를 나타냅니다.
기존 계정의 비밀번호 변경:
SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword'); 문을 사용하여 이전 비밀번호가 있는 계정의 비밀번호를 업데이트합니다. '사용자' 및 '호스트'를 쿼리의 적절한 값으로 바꾸십시오.
권한 플러시:
FLUSH PRIVILEGES를 실행합니다. 변경 사항을 적용합니다.
비밀번호 길이 확인:
2단계의 쿼리를 다시 실행하여 현재 비밀번호 길이가 41인지 확인하세요. .
이러한 단계를 구현하면 이전 비밀번호 체계를 사용하더라도 MySQLi를 사용하여 MySQL 데이터베이스에 성공적으로 연결할 수 있습니다.
위 내용은 MySQLi를 사용하여 이전 인증으로 MySQL 4.1에 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!