연결된 MySQL 서버가 삽입 시 중단됨

연결된 MySQL 서버가 삽입 시 중단됨

저는 네트워크의 다른 서버에 있는 MySQL에 연결되는 MS SQL Server 2008에서 5분마다 작업을 실행하고 있습니다. 아마도 80%의 시간 동안 작동할 것입니다. 나머지 20%로 인해 MySQL이 중단되며 a service mysql restart가 필요합니다.

5분마다 실행되는 쿼리에 대한 정보는 다음과 같습니다.

  • ~32,000개의 행과 25개의 열
  • 엔진 = MyISAM
  • 쿼리(SQL Server 2008에서 실행) =INSERT INTO MYSQLINTRANET...segments_temp SELECT * FROM ProjectTracking.dbo.segments;
  • 행 실패가 무작위로 나타납니다.
  • 오류 로그가 비어 있습니다.

ProjectTracking.dbo.segments이 (가) 잠겨서 중단될 수 있습니까 ?

오류 로그에 보고된 오류가 없으면 여기서 어디로 갈 수 있습니까?

답변1

이것을 주석으로 남겨두고 싶었지만 일부 코드를 인용하고 싶어서 대신 여기에 작성하겠습니다. 잠금이 발생하는 위치를 추적하는 것부터 시작하겠습니다. 다음에 자물쇠가 생기면 데이터를 수집하세요. MS SQL 서버에서 다음을 실행합니다.

USE master
select text,wait_time,blocking_session_id AS "Block",
percent_complete, * from sys.dm_exec_requests 
CROSS APPLY sys.dm_exec_sql_text(sql_handle)  AS s2 order by start_time asc

반품을 분석하고 상태가 어떤지 확인하세요. 차단됐나요? 원격에서 데이터가 반환되기를 기다리고 있습니까?

MySQL 서버에서 다음을 실행합니다.

show full processlist;

게다가:

SHOW ENGINE INNODB STATUS

첫 번째에는 실행 중인 프로세스가 나열됩니다. 쿼리 상태는 어떻습니까? 기다리고 있다는 말은 무슨 뜻인가요? 두 번째는 교착 상태 문제가 있는지 찾는 데 도움이 됩니다.

관련 정보