SQL Server 2008에서 작업하고 있습니다. 에이전트를 사용하여 작업을 생성하고 매분 실행되도록 예약했습니다. 작업은 테이블 XXX에서 임시 테이블로 데이터를 이동 한 다음 테이블 YYY로 데이터를 이동하는 저장 프로 시저를 실행합니다.SQL Server에서 장기 실행 작업 실행
데이터가 상당히 크기 때문에 작업 실행에 1 분 이상 소요될 수 있습니다.
첫 번째 인스턴스가 아직 실행 중이더라도 작업의 두 번째 인스턴스가 시작 되나요?
그렇다면 임시 테이블 (상태 = 1)의 레코드를 표시하여 해당 레코드가 이전 작업 인스턴스에서 처리 중임을 나타내야합니까?
작업의 인스턴스가 현재 실행되고 있는지 확인하여 작업의 두 번째 인스턴스를 시작하지 못하도록하는 방법이 있습니까?
내가 모르는 다른 해결책이 있습니까? (처리량이 중요 함)
예, 단 하나의 인스턴스 만 가질 수 있습니다. MS는이 기능을 제공하기 위해 MSX/TSX와 협력 할 것을 권장합니다. - http://connect.microsoft.com/SQLServer/feedback/details/633140/sql-server-agent-allow- multiple-instances-of-single-job 모든 작업이 ID를 가지고있는 해당 작업의 사본을 가지고 있다고 생각할 수 있습니다.이 ID를 상태 열에 넣어서 진행할 데이터를 표시하십시오. – Silx