현재 위치: > 최신 기사 목록> 연결이 복원되었는지 확인하려면 mysqli_ping 후 $ errno를 확인하십시오.

연결이 복원되었는지 확인하려면 mysqli_ping 후 $ errno를 확인하십시오.

M66 2025-05-28

MySQL 데이터베이스를 사용할 때는 종종 데이터베이스 연결이 분리되는 상황을 처리해야합니다. 일반적으로 코드에서 연결 감지를 수행하고 데이터베이스 연결이 연결이 끊어지면 다시 연결하려고 시도 할 수 있습니다. 일반적인 방법은 mysqli_ping () 함수를 사용하여 연결이 유효한지 여부를 감지하고 mysqli :: $ errno를 사용하여 연결 복구 상태를 확인하는 것입니다.

1. mysqli_ping () 란 무엇입니까?

mysqli_ping ()은 MySQL 데이터베이스 연결이 여전히 유효한지 여부를 감지하기 위해 PHP가 제공하는 함수입니다. 데이터베이스 연결이 유효하면 함수가 true를 반환하고 그렇지 않으면 False가 반환됩니다. 연결을 사용할 수없는 경우이 기능을 사용하여 연결을 다시 설정할 수 있습니다.

mysqli_ping () 의 사용 예

 <?php
$mysqli = new mysqli("m66.net", "username", "password", "dbname");

if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}

// 사용 mysqli_ping() 연결이 여전히 유효한지 확인하십시오
if (!$mysqli->ping()) {
    echo "단절,다시 연결하려고합니다...<br>";
    // 다시 연결하십시오
    $mysqli = new mysqli("m66.net", "username", "password", "dbname");

    // 재 연결이 성공했는지 확인하십시오
    if ($mysqli->connect_error) {
        die("重新연결이 실패했습니다: " . $mysqli->connect_error);
    } else {
        echo "성공적으로 다시 연결하십시오!<br>";
    }
} else {
    echo "연결은 유효합니다!<br>";
}
?>

위의 코드에서는 mysqli_ping ()을 사용하여 데이터베이스 연결 상태를 감지합니다. 연결이 연결이 끊어지면 데이터베이스에 다시 연결하고 연결이 성공했는지 확인하십시오.

2. 데이터베이스 연결이 정상으로 복원되는지 여부를 확인하기 위해 mysqli :: $ errno를 사용하는 방법은 무엇입니까?

mysqli :: $ errno 는 PHP에서 일반적으로 사용되는 속성으로 최신 데이터베이스 작업의 오류 코드가 포함되어 있습니다. 최근 작업에서 오류가 발생하지 않으면 mysqli :: $ errno 의 값은 0 입니다. 데이터베이스 연결이 성공적으로 복원되면 mysqli :: $ errno0이 됩니다. 연결 고장 또는 기타 데이터베이스 오류가 발생하면 MySQLI :: $ errno가 0이 아닌 값을 반환하여 오류의 특정 원인을 나타냅니다.

mysqli :: $ errno를 사용하여 연결 복구 상태를 확인하십시오

 <?php
$mysqli = new mysqli("m66.net", "username", "password", "dbname");

if ($mysqli->connect_error) {
    die("연결이 실패했습니다: " . $mysqli->connect_error);
}

// 사용 mysqli_ping() 연결이 유효한지 확인하십시오
if (!$mysqli->ping()) {
    echo "단절,다시 연결하려고합니다...<br>";
    
    // 다시 연결하십시오
    $mysqli = new mysqli("m66.net", "username", "password", "dbname");

    // 사용 mysqli::$errno 연결이 복원되었는지 확인하십시오
    if ($mysqli->connect_error) {
        echo "重新연결이 실패했습니다,오류 코드: " . $mysqli->connect_errno . "<br>";
    } else {
        echo "성공적으로 다시 연결하십시오!<br>";
    }
} else {
    echo "연결은 유효합니다!<br>";
}
?>

위 코드에서는 mysqli :: $ errno를 확인하여 연결이 복원되는지 확인합니다. 다시 연결하려고 할 때 연결 오류가 있으면 $ mysqli-> connect_errno를 통해 특정 오류 코드를 가져와 개발자가 문제를 이해하도록 돕습니다.

3. 왜 mysqli_ping ()mysqli :: $ errno 와 함께 사용합니까?

mysqli_ping ()은 데이터베이스 연결이 유효한지 확인하는 데 도움이 될 수 있지만 연결이 연결이 끊어지면 MySQL 서버 측에 네트워크 오류 또는 문제가있을 수 있습니다. 이 시점에서 MySqli :: $ errno는 문제를 더 잘 진단하는 데 도움이되는 추가 오류 정보를 제공 할 수 있습니다.

예를 들어, mysqli :: $ errno는 다음 오류 코드를 반환 할 수 있습니다.

  • 2002- 연결 시간 초과

  • 1045- 권한 문제

  • 2003- 데이터베이스 서버에 액세스 할 수 없습니다

mysqli_ping ()mysqli :: $ errno를 결합함으로써 데이터베이스 연결 상태를 명확하게 이해하고 해당 조치를 취할 수 있습니다.

4. 요약

mysqli_ping ()을 사용하여 데이터베이스 연결 상태를 확인하고 mysqli :: $ errno를 통해 정상으로 복원되는지 확인하는 것은 데이터베이스 연결 문제를 처리하는 매우 효과적인 방법입니다. 이 두 가지를 결합하면 데이터베이스 연결 문제를 신속하게 감지하고 처리하여 프로그램의 안정성과 신뢰성을 보장 할 수 있습니다.

위의 방법을 통해 MySQL 데이터베이스에 대한 연결이 건강한 상태에 있고 연결 손실로 인한 오류를 쉽게 줄일 수 있습니다. 데이터베이스 연결 문제의 적시 감지 및 처리는 시스템의 안정적인 작동을 보장하는 핵심입니다.