I have several dozen servers and would like to be able to check configurations on them ever quarter or so to make sure nothing has changed. I am having difficulty finding how to read a few configurations. Those settings I'm having problems with are in the SQL Server Agent properties:

Under the Alert System tab:
   Enable Mail profile
   Mail system
   Mail Profile
   Enable Fail-safe operator
   Notify Using

Under the History tab:
   Limit size of job history log
   Remove agent history

Hopefully someone can point me in the direction of where I can run a cross server query or better yet powershell query to check all my servers configurations. Thanks!

  • Good place to start: msdn.microsoft.com/en-us/library/ms181367.aspx. This article lists all the tables used by SQL Agent. Out of curiosity, couldn't you just lock down the SQL Agent so no one can make changes without you knowing? I believe to make those changes you would need to be a member of sysadmin. Oct 26, 2016 at 16:49
  • Yeah, unfortunately my management team wants to allow several people be SAs. Not that I don't trust them, but I just want to make sure nothing accidentally changes :) Oct 26, 2016 at 16:51
  • But yes, I've already looked at that list and it is not part of any of those tables. Oct 26, 2016 at 16:54
  • Most of these are going to be registry settings which I don't believe have been officially documented. JobHistory can be found as part of sys.dm_server_registry msdn.microsoft.com/en-us/library/hh204561.aspx Oct 26, 2016 at 18:36

1 Answer 1


For a "cross-server" query you could set up a Central Management Server and add Registered Servers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.