前几天碰到一个问题, SQL Server 2008 SP2 上的一个检查数据库完整性的维护计划失败了, 这个维护计划没有过任何的修改.
先查看一下执行这个维护计划的job的历史, 有类似以下的报错:
Executing query "DECLARE @Guid UNIQUEIDENTIFIER EXECUTE msdb..sp...".: 100% complete
End Progress DTExec: The package execution returned DTSER_FAILURE (1).
Started: 10:14:30 AM Finished : 10:14:31 AM Elapsed: 1.185 seconds.
The package execution failed. The step failed.
从这个报错里看不出什么东西. 只知道这个job是10:14:30 AM 这个时候开始的, 执行了1.185秒就报错了.
然后再查看一下维护计划的历史, 只有如下的一条报错:
Alter failed for Server 'server_name\\instance_name'
看起来有点莫名, 从维护计划生成的语句来看, 也就是dbcc checkdb之类, 为什么会有alter server的操作?
再查看一下errorlog, 发现在维护计划报错的那一时刻, 有如下一条报错:
Configuration option 'user options' changed from 0 to 0. Run the RECONFIGURE statement to install.
看不出个所以然, 还是打开profiler看一下吧. 于是用profiler抓到了以下的语句:
EXEC sys.sp_configure N&#
先查看一下执行这个维护计划的job的历史, 有类似以下的报错:
Executing query "DECLARE @Guid UNIQUEIDENTIFIER EXECUTE msdb..sp...".: 100% complete
End Progress DTExec: The package execution returned DTSER_FAILURE (1).
Started: 10:14:30 AM Finished : 10:14:31 AM Elapsed: 1.185 seconds.
The package execution failed. The step failed.
从这个报错里看不出什么东西. 只知道这个job是10:14:30 AM 这个时候开始的, 执行了1.185秒就报错了.
然后再查看一下维护计划的历史, 只有如下的一条报错:
Alter failed for Server 'server_name\\instance_name'
看起来有点莫名, 从维护计划生成的语句来看, 也就是dbcc checkdb之类, 为什么会有alter server的操作?
再查看一下errorlog, 发现在维护计划报错的那一时刻, 有如下一条报错:
Configuration option 'user options' changed from 0 to 0. Run the RECONFIGURE statement to install.
看不出个所以然, 还是打开profiler看一下吧. 于是用profiler抓到了以下的语句:
EXEC sys.sp_configure N&#