집 >데이터 베이스 >MySQL 튜토리얼 >PDO를 사용하는 PHP 스크립트를 여러 번 성공적으로 실행한 후에도 계속 'MySQL 서버가 사라졌습니다' 오류가 발생하는 이유는 무엇입니까?
PDO가 포함된 PHP 스크립트에서 "MySQL Server Has Gone Away" 오류가 발생함
야간 작업을 수행하는 스크립트에서 PDO가 문을 준비하는 문제에 직면함 여러 번 성공적으로 실행한 후 "MySQL 서버가 사라졌습니다" 오류와 함께 실패합니다. 이 문제의 근본 원인은 MySQL에 설정된 최대 허용 패킷 크기를 초과하는 경우가 많습니다.
해결책: 서버 구성 조정
오류를 해결하려면 다음이 필요합니다. MySQL 구성 파일(my.ini)에서 max_allowed_packet 설정을 조정합니다. 이 설정은 서버가 처리할 수 있는 최대 패킷 크기를 지정합니다. 주어진 시나리오에서 허용된 크기보다 큰 BLOB를 삽입하려고 하면 문제가 발생할 가능성이 높습니다.
오류 메시지 및 로거 출력
이 문제가 발생하면 클라이언트 측에서는 "MySQL 서버가 사라졌습니다."라는 오류 메시지를 표시합니다. 또한 오류 로깅이 활성화된 경우 서버 로그에 다음 오류가 포함될 수 있습니다.
Error 1153 Got a packet bigger than 'max_allowed_packet' bytes
구성 조정
이 문제를 해결하려면 가장 큰 크기를 결정하세요. 삽입될 BLOB에 따라 my.ini에 max_allowed_packet을 설정합니다. 예를 들어 최대 BLOB 크기가 200MB로 추정되는 경우 다음과 같이 구성을 조정할 수 있습니다.
[mysqld] ... max_allowed_packet = 200M ...
위 내용은 PDO를 사용하는 PHP 스크립트를 여러 번 성공적으로 실행한 후에도 계속 'MySQL 서버가 사라졌습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!