SQL Server가 자동으로 다시 시작되면 SQL Server 에이전트 서비스에서 오류를 보고합니다. 사용자나 응용 프로그램에서 명시적으로 중지 명령을 내린 경우 이외의 어떤 이유로 인해 SQL Server가 중지되었고 SQL Server 에이전트 고급 속성에서 "SQL Server가 갑자기 작동을 멈추면 자동으로 다시 시작" 옵션을 선택한 경우에만 SQL Server 에이전트가 SQL Server를 자동으로 다시 시작합니다. SQL Server를 다시 시작하는 동안 SQL Server 에이전트는 SQL Server를 호스트하는 컴퓨터의 응용 프로그램 이벤트 로그에 이 메시지를 씁니다.
SQL Server가 자동으로 다시 시작되면 SQL Server 에이전트 서비스에서 오류를 보고합니다. 사용자나 응용 프로그램에서 명시적으로 중지 명령을 내린 경우 이외의 어떤 이유로 인해 SQL Server가 중지되었고 SQL Server 에이전트 고급 속성에서 "SQL Server가 갑자기 작동을 멈추면 자동으로 다시 시작" 옵션을 선택한 경우에만 SQL Server 에이전트가 SQL Server를 자동으로 다시 시작합니다. SQL Server를 다시 시작하는 동안 SQL Server 에이전트는 SQL Server를 호스트하는 컴퓨터의 응용 프로그램 이벤트 로그에 이 메시지를 씁니다.
SQL Server는 여러 다른 이유로 갑자기 작동을 멈출 수 있습니다. 다음과 같은 원인이 있습니다.
확장 저장 프로시저 또는 OLE 자동화 같은 SQL Server 메모리 공간 내 프로세스의 메모리 누수
태스크 관리자의 프로세스 탭이나 Windows Resource Kit의 kill.exe 같은 프로그램에서 sqlservr.exe 프로세스를 직접 종료하고 있습니다.
일부 유형의 처리되지 않은 액세스 위반
SQL Server 에이전트가 SQL Server를 자동으로 다시 시작하지 않도록 하려면 옵션을 해제하세요. 이에 대한 절차는 온라인 설명서의 "SQL Server 에이전트 속성(고급 탭)"에서 설명합니다.
문제가 반복해서 발생하는 경우 SQL Server 서비스가 갑자기 작동을 멈춘 이유를 확인할 필요가 있습니다.
SQL Server 오류 로그와 이벤트 뷰어 로그에서 서비스가 갑자기 작동을 멈춘 이유에 대해 설명하는 관련 오류가 있는지 확인합니다.
성능 모니터를 사용하여 시스템 상태를 모니터링하고 서비스가 종료된 시간대에 문제가 있는지 확인합니다.
이름 | 설명 | 기본값 |
사용 | 워크플로 사용하거나 사용하지 않도록 설정합니다. | 예 |
간격(초) | 워크플로를 실행하는 반복 시간 간격(초)입니다. | 300 |
우선 순위 | 알림 우선 순위를 정의합니다. | 1 |
심각도 | 알림 심각도를 정의합니다. | 2 |
동기화 시간 | 동기화 시간 |
|
시간 제한(초) | 여기서 지정한 시간 동안 워크플로가 실행된 후 워크플로가 닫히고 실패로 표시됩니다. | 200 |
데이터베이스 연결 시간 제한(초) | 워크플로는 지정된 기간 동안 데이터베이스에 액세스할 수 없으면 실패하며 이벤트를 등록합니다. | 15 |
Target | Microsoft.SQLServer.Windows.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.SQLServer.Windows.DataSource.EventCollectionFiltered | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Windows.EventRule.DBEngine.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule" Target="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{D9D2C13A-3AAA-410C-B594-EC4ED1A7FC75}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Windows.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<MonitoringType>$Target/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/MonitoringType$</MonitoringType>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>14265</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Windows.EventRule.DBEngine.The_MSSQLServer_service_terminated_unexpectedly_3_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>