SQL Server Central Management Servers System Tables

By:   |   Updated: 2011-05-23   |   Comments (4)   |   Related: 1 | 2 | 3 | 4 | More > Central Management Servers


Problem

I have SQL Server Central Management Servers setup in my environment. How can I get a list of the registered servers and their associated properties? Are there any queries I can issue? Check out this tip to learn more.

Solution

Sometimes we came across a situation where we need to query the SQL Server Central Management Servers to get the list of the registered servers and groups. You can query the two MSDB system tables below to get a list of the registered servers and their groups.

  • msdb.dbo.sysmanagement_shared_registered_servers_internal
  • msdb.dbo.sysmanagement_shared_server_groups_internal

We can use these system tables for the following:

  • Find out the list of registered servers and their groups
  • Find out servers which are registered twice in different folders
  • Compare the query result to check out the servers registered in an incorrect group or decommissioned servers

Query to list server groups and types

USE msdb;
GO
/* Query to list out Server Groups and Types */
SELECT *
FROM msdb.dbo.sysmanagement_shared_server_groups_internal;
GO

query the sql server cms to get a list of  servers and groups


Query to list the registered servers

USE msdb ;
GO
/* Query to list out the registered servers */
SELECT * 
FROM msdb.dbo.sysmanagement_shared_registered_servers_internal;
GO

query to the list of registered servers


Query to list the server and groups

/* Servers and groups */
SELECT DISTINCT groups.name AS 'Server Group Name'
     ,svr.server_name AS 'Server Name'
FROM msdb.dbo.sysmanagement_shared_server_groups_internal groups 
INNER JOIN msdb.dbo.sysmanagement_shared_registered_servers_internal svr
 ON groups.server_group_id = svr.server_group_id;
GO

use queries from sql server cms


Next Steps


sql server categories

sql server webinars

subscribe to mssqltips

sql server tutorials

sql server white papers

next tip



About the author
MSSQLTips author Jugal Shah Jugal Shah has 8+ years of extensive SQL Server experience and has worked on SQL Server 2000, 2005, 2008 and 2008 R2.

This author pledges the content of this article is based on professional experience and not AI generated.

View all my tips


Article Last Updated: 2011-05-23

Comments For This Article




Friday, March 10, 2017 - 8:37:20 AM - Greg Robidoux Back To Top (47743)

Thanks James.  The code has been updated.


Thursday, March 9, 2017 - 6:09:37 PM - James Back To Top (47700)

Sir;

You have a typo in "Query to list the registered servers"

FROM msdb.dbo.sysmanagement_shared_registered_servers_intrnal;  <-- should be internal


Tuesday, May 24, 2011 - 1:38:51 AM - Jugal Back To Top (13899)

Hi Abhi,

CMS is SQL Server 2008 feature. You can register the lower SQL Server version in CMS, but you must need atleast 1 SQL Server 2008 instance. That's why you are not able to in lower versions.

You can query it in SQL Server 2008 only.

Thanks,

Jugal SHah

 

 


Monday, May 23, 2011 - 1:32:07 PM - Abhi Back To Top (13893)

Hi Jugal,

Thanks for this tip, but its working only in SQL 2008.

what about 2005 sql server?

 

Thanks in advance,

Abhi















get free sql tips
agree to terms