공간 부족 이벤트와 누락 된 추적 사이에는 강한 상관 관계가 있습니다. 이 sp_configure
옵션은 단지 기본 추적이 사용 가능함을 나타내지 만 실행 중이거나 심지어 존재한다는 것을 의미하지는 않습니다. 참고 sys.traces
테이블 만 뷰되지 않습니다 :
create view sys.traces as select * from OpenRowset(TABLE SYSTRACES)
뭐라고합니까 TABLE SYSTRACES
행 집합이 제공? 어떻게 작동합니까? 결과는 어떻게 필터링됩니까? 당신의 추측은 나의 것만 큼 좋습니다. 트레이스가 여전히있을 수 있지만이 뷰에 의해 트레이스가 노출되지 않는 상태 일 수 있습니다. 또한 서비스를 다시 시작한 후에도 시작되지 않는 상태 일 수 있습니다.
먼저 기본 추적의 위치에 충분한 공간이 있는지, SQL Server 서비스 계정에 여전히 쓰기 권한이 있는지, 공간 할당량의 영향을받지 않는지 확인하십시오. 레지스트리에서 위치를 가져올 수 있습니다.
HKEY_LOCAL_MACHINE\Software\Microsoft\...YourInstance...\Setup\SQLDataRoot\
SQL Server가이 폴더에 쓸 수 있어야한다고 확신하면 기본 추적을 비활성화했다가 다시 활성화 할 수 있습니다.
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
EXEC sp_configure 'default trace enabled', 0;
GO
RECONFIGURE WITH OVERRIDE;
GO
EXEC sp_configure 'default trace enabled', 1;
GO
RECONFIGURE WITH OVERRIDE;
이 시점에서 SQL Server 서비스를 다시 시작할 필요는 없지만에 행이 표시되지 않으면 SQL Server 바지에서 마지막 차기가 될 수 있습니다 sys.traces
. trace_id
당신이 얻는 것은 1에 머물러 있다고 보장되지는 않습니다.
select * from sys.traces
빈 행 집합을 반환