MySQL - ERROR 1153 (08S01) at line 478: Got a packet bigger than 'max_allowed_packet' bytes

ERROR 1153 (08S01) at line 478: Got a packet bigger than 'max_allowed_packet' bytes

mysqldump를 이용해 백업 받은 파일을 다른 디비에 올리는 과정에서 위의 에러 메시지를 출력한다.

원본 디비의 'max_allowed_packet' 이 대상 디비보다 클 때 발생하는 에러로, 대상 디비의 'max_allowed_packet' 를 원본 디비 이상으로 잡아주면 된다.

mysql> show variables like 'max_allowed_packet';

원하는 값으로 변경한다. 동적 시스템 변수라면 서버를 내리지 않고 변경 가능하다.

mysql > SET max_allowed_packet=10000;
mysql > SET @@local.max_allowed_packet=10000;
mysql > SET @@.max_allowed_packet=1000000;
mysql > SET GLOBAL max_allowed_packet=1000000;
mysql > SET @@global.max_allowed_packet=1000000;

※ 만약 해당 시스템 변수가 동적 변수이고, 로컬과 글로벌의 값을 동시에 가질 수 있다면, 영역을 명시하지 않는 한 SET 명령으로 수정할 때, 로컬 변수의 값을 수정한다. 그 값은 세션이 종료됨과 동시에 초기화된다.
show variables 로 확인되는 값도 해당 세션의 값이다. 글로벌 값을 확인하고 싶다면

mysql >select @@global.variable_name;

서버를 시작할 때 데몬에서 설정할 수도 있다.

# mysqld --max_allowed_packet=1G

항상 같은 값을 적용하고 싶다면 옵션 파일에 명기한다.

# vi my.cnf

[ mysqld]
max_allowed_packet=1G

※ K,M,G 같은 바이트의 단위는 동적인 변경에는 사용할 수 없다.

by overdose | 2008/11/04 11:16 | MySQL | 트랙백 | 덧글(1)

트랙백 주소 : http://devideby0.egloos.com/tb/2123630
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 조경화 at 2008/12/23 14:02
담아갑니다 ^^ 감사합니다~

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶