[mysql] 오류 코드 : 2013. 쿼리 중 MySQL 서버 연결이 끊어졌습니다

내가 가지고 쿼리 동안 MySQL 서버 2013 로스트 연결 : 오류 코드 내가 MySQL의 워크 벤치를 사용하여 테이블에 인덱스를 추가하려고 할 때 오류가 발생했습니다. 또한 긴 쿼리를 실행할 때마다 나타납니다.

시간 종료 값을 늘릴 수 있습니까?



답변

새로운 버전의 MySQL WorkBench에는 특정 타임 아웃을 변경하는 옵션이 있습니다.

나를 위해 편집 → 환경 설정 → SQL 편집기 → DBMS 연결 읽기 시간 초과 (초) : 600

값을 6000으로 변경했습니다.

또한 전체 데이터 세트를 검색 할 때마다 제한을두기 때문에 선택하지 않은 제한 행은 번거 롭습니다.


답변

comandline 옵션 net_read_timeout/ wait_timeout및 적절한 값 (초)으로 DB 서버를 시작하십시오 (예 🙂 --net_read_timeout=100.

참조를 위해 여기여기 를 참조하십시오 .


답변

쿼리에 BLOB 데이터가 있는 경우이 답변에서 제안한대로my.ini 변경 사항 적용하여이 문제를 해결할 수 있습니다 .

[mysqld]
max_allowed_packet=16M

기본적으로이 값은 1M입니다 (허용되는 최대 값은 1024M입니다). 제공된 값이 1024K의 배수가 아닌 경우 가장 가까운 1024K의 배수로 자동 반올림됩니다.

참조 된 스레드는 MySQL 오류 2006 에 관한 것이지만 max_allowed_packet1M에서 16M으로 설정하면 긴 쿼리를 실행할 때 나타나는 2013 오류 수정되었습니다.

WAMP 사용자의 경우 : [wampmysqld]섹션 에서 플래그를 찾을 수 있습니다.


답변

/ etc / mysql / cnf 파일에 다음을 추가하십시오.

innodb_buffer_pool_size = 64M

예:

key_buffer              = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
innodb_buffer_pool_size = 64M


답변

SET @@local.net_read_timeout=360;

경고 : 다음은 원격 연결에서 적용 할 때 작동하지 않습니다.

SET @@global.net_read_timeout=360;


답변

이 오류 메시지에는 세 가지 원인이있을 수 있습니다.

  1. 일반적으로 네트워크 연결 문제를 나타내며이 오류가 자주 발생하면 네트워크 상태를 확인해야합니다
  2. 때때로“쿼리 중”양식은 하나 이상의 쿼리의 일부로 수백만 행이 전송 될 때 발생합니다.
  3. 클라이언트가 서버에 초기 연결을 시도 할 때 발생할 수있는 경우는 거의 없습니다.

자세한 내용 은 >>

원인 2 :

SET GLOBAL interactive_timeout=60;

기본 30 초에서 60 초 이상으로

원인 3 :

SET GLOBAL connect_timeout=60;


답변

고마워요! 그러나 mysqldb 업데이트로 구성이 변경되었습니다.

max_allowed_packet

net_write_timeout

net_read_timeout

MySQL의 의사