집 >데이터 베이스 >MySQL 튜토리얼 >PHP MySQL 연결에서 '연결 실패: SQLSTATE[HY000] [2002] 연결이 거부되었습니다.'를 수정하는 방법은 무엇입니까?
phpMyAdmin에서 호스팅되는 MySQL 데이터베이스에 대한 PHP 연결을 설정하려고 할 때, 사용자는 "연결 실패: SQLSTATE[HY000] [2002] 연결이 거부되었습니다."라는 실망스러운 오류를 경험할 수 있습니다. 이 오류는 PHP 스크립트가 데이터베이스 서버에 연결할 수 없음을 나타냅니다.
예를 들어 다음 PHP 코드를 고려해 보세요.
$servername = "127.0.0.1"; $username = "root"; $password = "root"; try { $conn = new PDO("mysql:host=$servername;dbname=AppDatabase", $username, $password); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Connected successfully"; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); }
이 코드는 PDO를 사용하여 MySQL 데이터베이스에 연결을 시도합니다. (PHP 데이터 개체) 개체입니다. 하지만 Postman을 통해 연결을 사용하는 경우 "연결 실패: SQLSTATE[HY000] [2002] 연결이 거부되었습니다." 오류가 발생합니다.
처음에는 "연결 실패: SQLSTATE[HY000] [2002] 오류가 발생할 수 있습니다. ] 해당 파일이나 디렉터리가 없습니다." 이는 서버 이름이 "localhost"로 설정된 경우 발생합니다. 서버 이름을 IP 주소로 변경하면 이 문제가 해결되지만 "연결 거부됨" 오류가 발생합니다.
이 연결 거부에 대한 해결책은 사용 중인 포트 번호에 있습니다. MySQL의 기본 포트는 3306입니다. 그러나 MAMP를 통한 연결의 경우 포트를 8889로 설정해야 합니다.
다음과 같이 코드를 조정하면 연결 문제가 해결됩니다.
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
이렇게 수정하면 PHP 스크립트는 포트 8889를 사용하여 MySQL 데이터베이스에 성공적으로 연결됩니다.
위 내용은 PHP MySQL 연결에서 '연결 실패: SQLSTATE[HY000] [2002] 연결이 거부되었습니다.'를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!