데이터베이스에 데이터를 삽입하려고 시도하는 동안 'QUERY 패킷 전송 중 오류'가 발생할 수 있습니다. 문제와 해결 방법을 자세히 살펴보겠습니다.
제공된 코드는 PDO를 활용하여 긴 텍스트로 정의된 열에 데이터를 삽입하는 쿼리를 준비하고 실행합니다. 그러나 이 오류는 데이터 크기가 한도를 초과했음을 나타냅니다.
MySQL은 쿼리 중에 전송할 수 있는 데이터 패킷의 최대 크기에 제한을 둡니다. 기본적으로 이 제한은 16MB입니다. Longtext는 이론적으로 최대 4GB의 데이터를 지원해야 합니다.
삽입되는 데이터가 허용된 패킷 크기보다 큰 경우 문제가 발생합니다. MySQL은 데이터를 패킷으로 전송하는데, 패킷이 전체 데이터를 수용할 수 없는 경우 "QUERY 패킷 전송 중 오류 발생"이 발생합니다.
해결 방법:
해결 방법 이 문제에는 두 가지 옵션이 있습니다.
SET GLOBAL max_allowed_packet=524288000;
이 명령은 max_allowed_packet 크기를 500MB로 설정하며 이는 대부분의 시나리오에 충분합니다. 잠재적인 성능 오버헤드를 방지하려면 데이터를 삽입한 후 값을 기본값으로 재설정해야 합니다.
위 내용은 MySQL 데이터베이스에 대용량 데이터를 삽입할 때 'QUERY 패킷을 보내는 동안 오류'가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!