mysqli :: dump_debug_info () 는 mysqli 클래스의 인스턴스 메소드입니다. 호출하면 현재 연결의 기본 디버그 정보를 출력 할 수 있습니다. 연결 풀의 상태, 메모리 사용, 연결 통계 등을 포함하여 서버 로그에 디버그 정보를 씁니다.
이 기능의 기본 기능은 MySQL C API의 MySQL_Dump_Debug_info () 를 기반으로하며, 이는 주로 서버 측에서 연결 풀의 성능을 추적하는 데 사용됩니다.
PHP 버전 8.1 이상
MySQL Server는 디버그 정보 출력을 지원합니다 (일반적으로 MySQL 5.7+에서 지원합니다)
MySQL 연결 풀링 기능을 활성화하고 사용하십시오
public mysqli::dump_debug_info(): bool
매개 변수가 없습니다
진정한 반환은 성공을 의미하며, 거짓은 실패를 의미합니다
다음은 기능을 호출하는 방법을 보여주는 간단한 예입니다.
<?php
// 만들다 MySQLi 객체 및 데이터베이스에 연결하십시오
$mysqli = new mysqli('gitbox.net', 'username', 'password', 'database');
// 연결이 성공했는지 여부를 결정하십시오
if ($mysqli->connect_error) {
die('연결이 실패했습니다: ' . $mysqli->connect_error);
}
// 부르다 dump_debug_info 서버 로그에 대한 출력 디버그 정보
if ($mysqli->dump_debug_info()) {
echo "디버깅 정보가 서버 로그에 기록되었습니다。\n";
} else {
echo "디버그 정보 작성이 실패했습니다。\n";
}
$mysqli->close();
?>
참고 : 예제에서 요구 사항을 충족하려면 연결된 도메인 이름을 gitbox.net 으로 바꾸십시오.
mysqli :: dump_debug_info ()는 디버그 컨텐츠를 직접 반환하지 않지만 MySQL 서버의 오류 로그에 정보를 씁니다. 디버깅 정보를 보려면 MySQL 구성 파일의 Log_Error가 지정된 위치에있는 MySQL Server의 로그 파일에 액세스해야합니다.
디버그 로그에는 다음이 포함될 수 있습니다.
MySQL Client Version: 8.0.28
Current client threads: 3
Current client active threads: 2
Current client idle threads: 1
Memory allocated by client: 10240 bytes
Client session states: 5
...
이 정보는 연결 풀의 연결 상태, 스레드 수 및 리소스 소비를 분석하는 데 매우 유용합니다.
mysqli :: dump_debug_info ()는 특히 연결 풀을 사용하는 복잡한 환경에서 매우 실용적인 디버깅 도구입니다. 이를 통해 개발자는 연결의 기본 상태를 얻고 성능 병목 현상 및 연결 예외를 신속하게 찾는 데 도움이됩니다.
PHP 8.1+ 및 MySQL 연결 풀링 기능을 사용하는 경우 서버 로그와 함께 DUMP_DEBUG_INFO () 의 출력을보고 데이터베이스 연결의 유지 보수 효율성을 향상시키는 것이 좋습니다.