通过代理作业运行时如何获取“dbcc checkdb”报告?

var*_*ble -3 sql-server dbcc dbcc-checkdb sql-server-2019

当我通过 Management Studio 运行 dbcc checkdb 时,我会得到完整的报告作为输出。

但是,当我通过 sql 代理作业运行 dbcc checkdb 时,我认为如果 dbcc checkdb 未检测到错误,则作业状态将显示为成功;或者如果 dbcc checkdb 未检测到错误,则作业状态将显示为成功。否则作业状态将显示为失败。那是对的吗?

通过 sql 代理作业运行 dbcc checkdb 时如何获取报告?

Tib*_*szi 5

您想要 DBCC CHECKDB 命令的输出如何?

  1. 在作业历史记录(msdb 中的 sysjobhistory)中,您可以在 SSMS 中打开吗?
  2. 作为文本文件?
  3. 包含在发送给您的电子邮件中?

对于 1,这已经为您完成了,您无需执行任何额外操作。确保您在查看作业历史记录时在 GUI 中选择该作业步骤,而不是整个作业。这仅限于大约。4000 个字符。

对于 2,如果您想要作为文件,则只需为该作业步骤配置一个输出文件。您无法从 SSMS 访问此文件,因此请确保将该文件配置到正确的位置。

对于 3,如果您想要在电子邮件中,那么 MSSQL 中没有对此的内置支持。您可以创建一个输出文件,然后使用 sp_send_dbmail 并将该输出文件附加到电子邮件中。我编写了一个存储过程来促进这一点,您可以在此处找到它。