Это проблема, которую я видел у других людей, кроме меня, и я не нашел хорошего объяснения.
Допустим, у вас есть план обслуживания с заданием проверить базу данных, примерно так:
USE [MyDb]
GO
DBCC CHECKDB with no_infomsgs, all_errormsgs
Если вы посмотрите в своих журналах после выполнения задачи, вы можете увидеть что-то вроде этого:
08/15/2008 06:00:22,spid55,Unknown,DBCC CHECKDB (mssqlsystemresource) executed by NT AUTHORITY\SYSTEM found 0 errors and repaired 0 errors. Elapsed time: 0 hours 0 minutes 0 seconds.
08/15/2008 06:00:21,spid55,Unknown,DBCC CHECKDB (master) executed by NT AUTHORITY\SYSTEM found 0 errors and repaired 0 errors. Elapsed time: 0 hours 0 minutes 0 seconds.
Вместо проверки MyDb он проверил master и msssqlsystemresource.
Почему?
Мой обходной путь - создать задание агента сервера Sql с помощью:
dbcc checkdb ('MyDb') with no_infomsgs, all_errormsgs;
Это всегда хорошо работает.
08/15/2008 04:26:04,spid54,Unknown,DBCC CHECKDB (MyDb) WITH all_errormsgs<c/> no_infomsgs executed by NT AUTHORITY\SYSTEM found 0 errors and repaired 0 errors. Elapsed time: 0 hours 26 minutes 3 seconds.