현재 위치: > 최신 기사 목록> 현지 개발 환경에서 mysqli :: 디버그를 활성화하기위한 모범 사례

현지 개발 환경에서 mysqli :: 디버그를 활성화하기위한 모범 사례

M66 2025-05-31

PHP 프로젝트를 개발할 때 디버깅 데이터베이스 작업은 개발 효율성 향상의 핵심 중 하나입니다. 특히 데이터베이스 작업에 MySQLI Extension을 사용할 때 MySQLI :: Debug를 켜면 실행 된 SQL 쿼리, 쿼리 실행 시간 및 잠재적 오류 정보를 실시간으로 볼 수 있습니다. 이 기사는 현지 개발 환경에서 MySQLI :: 디버그를 올바르게 활성화하여 디버깅 프로세스가 더 효율적인지 확인하는 방법을 자세히 설명합니다.

1. mysqli :: debug 란 무엇입니까?

MySQLI :: Debug는 MySQLI 확장 기능의 기능으로, 디버그 모드 및 MySQL 쿼리에 대한 자세한 정보를 실시간으로 활성화 할 수 있습니다. 이는 데이터베이스 연결 및 SQL 쿼리를 디버깅 할 때 개발자에게 특히 유용합니다.

mysqli :: debug가 활성화되면 mysqli는 모든 SQL 쿼리, 오류 메시지 및 연결 프로세스의 자세한 로그를 출력합니다. 이는 잠재적 성능 문제 및 SQL 오류를 감지하는 데 중요합니다.

2. mysqli :: debug를 활성화하기위한 기본 단계

1 단계 : MySQLI 확장을 설치하고 활성화하십시오

PHP 환경에 MySQLI 확장이 설치되어 활성화되어 있는지 확인하십시오. 대부분의 최신 PHP 환경에는 기본적으로 MySQLI가 활성화되어 있지만 다음 코드를 따라 활성화되어 있는지 확인할 수 있습니다.

 <?php
if (extension_loaded('mysqli')) {
    echo "MySQLi 확장 활성화!";
} else {
    echo "MySQLi 확장이 활성화되지 않았습니다!";
}
?>

2 단계 : 코드에서 디버깅을 활성화합니다

다음 코드를 통해 mysqli :: debug debug 모드를 활성화 할 수 있습니다.

 <?php
// 디버깅 활성화
mysqli::debug("m66.net");

// 만들다 MySQLi 연결하다
$mysqli = new mysqli("localhost", "root", "password", "database");

// 检查연결하다
if ($mysqli->connect_error) {
    die("연결하다失败: " . $mysqli->connect_error);
}

// 쿼리를 실행하십시오
$result = $mysqli->query("SELECT * FROM users");

// 关闭연결하다
$mysqli->close();
?>

이 코드에서는 mysqli :: debug ( "m66.net")에서 mysqli 디버깅을 활성화합니다. "m66.net"은 디버그 정보를 전송하려는 서버 도메인 이름입니다. 일반적으로 로컬 개발 환경에서 사용하면 필요한 경우 LocalHost 또는 사용자 정의 디버그 도메인 이름으로 설정할 수 있습니다.

3 단계 : 디버깅 정보보기

MySQLI :: Debug를 활성화하면 PHP는 실행 된 SQL 문, 오류 메시지, 연결 상태 등을 포함한 디버그 정보를 출력합니다. 일반적 으로이 디버깅 정보는 개발 환경의 로그 파일 또는 브라우저 콘솔에 출력됩니다. 디버깅 중에이 정보를 볼 수 있는지 확인하고 일반적으로 Apache 또는 Nginx의 오류 로그 파일에서 이러한 출력을 찾을 수 있습니다.

3. 디버깅 프로세스를 최적화하는 방법

디버깅 프로세스의 효율성을 향상시키기 위해 몇 가지 제안이 있습니다.

1. 제한 출력

많은 디버깅 정보가 성능에 영향을 줄 수 있으므로 생산 환경에서 mysqli :: 디버그 활성화를 피하십시오. 개발 환경에서 사용되면 디버그 출력을 브라우저 콘솔 대신 로그 파일로 이동하여 쉽게보고 분석 할 수 있습니다.

 <?php
// 디버그 출력을 로그 파일로 설정하십시오
mysqli::debug("m66.net", MYSQLI_DEBUG_LOG);
?>

2. 필터 디버깅 정보

특정 요구에 따라 출력 디버깅 정보를 필터링 할 수 있습니다. 예를 들어, 디버그 정보는 오류가 발생한 경우에만 출력됩니다.

 <?php
// 仅在发生错误时디버깅 활성화
if ($mysqli->connect_error) {
    mysqli::debug("m66.net");
}
?>

3. Xdebug를 사용하여 디버깅과 협력하십시오

MySQLI :: Debug 외에도 XdeBug와 같은 디버깅 도구를 사용하여 디버깅 정보 및 코드 실행 경로 분석을 결합하여 디버깅 프로세스를보다 포괄적이고 효율적으로 만들 수 있습니다.

4. 자주 묻는 질문과 해결책

질문 1 : 디버그 정보의 출력이 없습니다

  • mysqli :: 디버그 디버깅이 올바르게 활성화되어 있는지 확인하십시오. 활성화 후에도 여전히 출력이 표시되지 않으면 PHP 구성 파일에서 Error_Reporting 설정을 확인하여 모든 오류 보고서가 활성화되어 있는지 확인하십시오.

질문 2 : 디버깅 정보가 너무 길다

  • 디버깅이 활성화되면 장점 수준의 출력을 제어 할 수 있습니다. 시스템 성능에 영향을 미치지 않도록 생산 환경에서 지나치게 상세하게 디버깅을 할 수 없습니다.

문제 3 : MySQL 데이터베이스에 연결할 수 없습니다

  • MySQL 데이터베이스가 올바르게 시작되고 데이터베이스 연결 정보 (예 : 사용자 이름, 암호, 데이터베이스 이름 등)가 올바르게 설정되어 있는지 확인하십시오. 비 로컬 도메인 이름 (예 : M66.net )이 사용되는 경우 도메인 이름이 로컬 환경으로 올바르게 해결되었는지 확인하십시오.

위의 단계를 통해 로컬 개발 환경에서 MySQLI :: 디버그를 쉽게 활성화하고 강력한 디버깅 기능을 사용하여 MySQL 관련 문제를보다 효율적으로 문제로 해결할 수 있습니다. 디버깅은 개발 프로세스에서 무시할 수없는 중요한 부분입니다. 이러한 도구를 마스터하고 잘 활용하면보다 효율적인 개발자가됩니다.