MySQL을 사용하여 개발 중 4MB가 넘는 파일을 업로드 시 다음과 같은 패킷 에러가 발생하였다.
1 | com.mysql.jdbc.PacketTooBigException: Packet for query is too large (9,523,277 > 4,194,304). You can change this value on the server by setting the 'max_allowed_packet' variable |
기본적으로 할당된 패킷 사이즈 값이 너무 작기 때문에 에러가 발생했기 때문에 수정이 필요하다. MySQL 설정에서 max_allowed_packet 값을 변경하여 해결하였다.
max_allowed_packet은 서버로 질의하거나 받게 되는 패킷의 최대 길이를 나타내는 시스템 변수
다음은 해결방법에 대해 알아보겠다.
1) MySQL 커맨드 라인에서 변경
먼저 MySQL 에 접속한다.
1 | mysql -u root -p **** |
1 | mysql> show variables; |
2) 설정파일 변경
/etc/my.cnf 설정파일 내의 값을 변경한다.
1 | vi /etc/my.cnf |
1 | 없을 시 추가한다. |
3) MySQL 재시작
다음 명령어를 사용여 MySQL를 재시작한다.
1 | 우분투 |