Logo
programming4us
programming4us
programming4us
programming4us
Windows XP
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server
programming4us
Windows Phone
 
 
Windows Server

System Center Configuration Manager 2007 : Inside the ConfigMgr Database

4/5/2012 5:58:28 PM
The Configuration Manager site database is a SQL Server database that contains data about your ConfigMgr infrastructure and objects, the client systems you manage, and other discovered resources. The default name of the site database is SMS_<Site Code> (where <Site Code> indicates the primary site the database is associated with). Although the exact number of objects in a ConfigMgr site database varies, there are generally several thousand objects. Management applications, including the Configuration Manager console, use WMI to access the database.

SQL Access to the Database

Microsoft’s Configuration Manager developers provide an extensive set of database views that present the underlying data tables in a consistent way. The views abstract away many of the details of the underlying table structure, which may change with future product releases. In some cases, ConfigMgr uses stored procedures in place of views to retrieve data from the tables. The reports in Configuration Manager use SQL views.You can use the views to understand the internal structure of the database. The next sections present a subset of these views and provide information about how the views are organized and named.

Most of the Configuration Manager SQL views correspond to ConfigMgr WMI classes. In many cases, the views also reflect the underlying table structure, with minor formatting changes and more meaningful field names.

Most ConfigMgr administration tasks do not require you to work directly with SQL statements. One Configuration Manager component—ConfigMgr reporting—allows you to directly supply native SQL statements that access the site database. The ConfigMgr console also allows you to create and schedule SQL database maintenance tasks. 

Using SQL Server Management Studio

The primary user interface for administering SQL Server 2005 is the SQL Server Management Studio. To access the Configuration Manager views, perform the following steps:

1.
Launch the SQL Server Management Studio from Start -> Programs -> Microsoft SQL Server 2005 -> SQL Server Management Studio.

2.
After connecting to the site database server SQL instance, expand <servername>\database\SMS_<Site Code>\views in the tree control in the left pane.

Viewing Collections

The Collections WMI object provides access to the properties and methods of the Configuration Manager collections defined in the site database. The SQL view v_Collections provides access to much of the same data. Figure 1 shows the tree control expanded in the left pane to display the column definitions for v_Collections, whereas the view on the right displays some of the column values visible when opening the view. These columns correspond to the SMS_Collection WMI class properties, . Notice that the MemberClassName column provides the name of the view for the collection membership. These views correspond to the WMI objects specified in the MemberClassName property of the SMS_Collection WMI class.

Figure 1. The v_Collection SQL view displays the most important properties of the site’s Configuration Manager collections.

The v_Collection view is one of several views referencing Configuration Manager objects. Similar views include v_Advertisement, v_Package, and v_Report. The naming conventions for views generally map to the corresponding WMI classes, according to the following rules:

  • WMI class names begin with SMS_, and SQL view names begin with v or v_.

  • View names over 30 characters are truncated.

  • The WMI property names are the same as the field names in the SQL views.

Site Properties

Basic Configuration Manager site properties are stored in the Sites table and exposed though several views and stored procedures. As an example, v_site displays the basic configuration of the current site and its child sites. The sysreslist table stores information about the site systems. An example of a stored procedure that retrieves data from the sites and sysreslist tables is MP_GetMPListForSite, which displays management point information for the site. The SMSData table includes additional site details, exposed through v_identification.

The tables and views discussed so far relate to the Configuration Manager objects and infrastructure. The database also contains a wealth of data gathered by various discovery methods and client inventory.  Discovery and inventory data is stored in resource tables and presented in resource views. The naming conventions for resource views are as follows:

  • Views displaying current inventory data are named v_GS_<group name>.

  • Views displaying inventory history data are named v_HS_<group name>.

  • Views containing discovery data are named v_R_<resource type name> for data contained in WMI scalar properties and v_RA_<architecture name>_<group name> for data contained in WMI array properties.

  • Inventory data for custom architectures is presented in views named v_G<resource type number>_<group name> and v_H<resource type number>_<group name>. 

Other Views

Several views are included that present metadata on other views and serve as keys to understanding the view schema. The v_SchemaViews view, displayed in Figure 2, lists the views in the view schema family and shows the type of each view.

Figure 2. V_SchemaViews provides a list and categorization of Configuration Manager views.

The following SQL statement generates the V_SchemaViews view:

CREATE VIEW [dbo].[v_SchemaViews] As SELECT CASE
WHEN name like 'v[_]RA[_]%' THEN 'Resource Array'
WHEN name like 'v[_]R[_]%'  THEN 'Resource'
WHEN name like 'v[_]HS[_]%' THEN 'Inventory History'
WHEN name like 'v[_]GS[_]%' THEN 'Inventory'
WHEN name like 'v[_]CM[_]%' THEN 'Collection'
WHEN name like '%Summ%' THEN 'Status Summarizer'
WHEN name like '%Stat%' THEN 'Status'
WHEN name like '%Permission%' THEN 'Security'
WHEN name like '%Secured%' THEN 'Security'
WHEN name like '%Map%' THEN 'Schema'
WHEN name = 'v_SchemaViews' THEN 'Schema'
ELSE 'Other'
END
As 'Type', name As 'ViewName'
FROM sysobjects
WHERE type='V' AND name like 'v[_]%'

If you examine the SQL statement, you can see that the selection criteria in the CASE statement use the naming conventions to determine the type of each view.

The v_ResourceMap view presents data from the DiscoveryArchitectures table, which defines the views representing discovery data. Table 2 displays the data provided by the v_ResourceMap view.

Table 2. The v_ResourceMap View
ResourceTypeDisplayNameResourceClassName
2Unknown Systemv_R_UnknownSystem
3User Groupv_R_UserGroup
4Userv_R_User
5Systemv_R_System
6IP Networkv_R_IPNetwork

ConfigMgr uses the fields in Table 3.3 in the following manner:

  • The ResourceType field is the key used throughout the resource views to associate resources with the appropriate discovery architecture.

  • The DisplayName field is a descriptive name of the discovery architecture.

  • The ResourceClassName indicates the view that contains basic identifying information for each discovered instance of the architecture.

As an example, the v_R_System view provides the unique Resource ID of each computer system discovered by Configuration Manager as well as basic system properties such as the NetBIOS name, operating system, and AD domain. Each resource view containing system information includes the Resource ID field, allowing you to link resources such as hard drives and network cards with the system to which they belong. 

The v_ResourceAttributeMap view displayed in Figure 3 presents resource attribute types extracted from discovery property definition data in the DiscPropertyDefs table.

Figure 3. v_ResourceAttributeMap lists the attributes used in resource views.

Tip: Column Names Have a “0” Appended

The ConfigMgr development team appends the column names with “0” to avoid possible conflicts with SQL reserved words.


The v_GroupMap view lists the inventory groups and views associated with each inventory architecture. Table 3 displays some v_GroupMap entries. Each inventory architecture represents a WMI class specified for inventory collection in the SMS_Def.mof file.

Table 3. The v_ GroupMap View (Partial Listing)
Resource TypeGroupIDDisplayNameInvClassNameInvHistoryClassNameMIFClass
51Systemv_GS_SYSTEMv_HS_SYSTEMSYSTEM
52Workstation Statusv_GS_WORKSTATION_STATUS MICROSOFT|WORKSTATION_STATUS|1.0
53CCM_RecentlyUsedAppsv_GS_CCM_RECENTLY_USED_APPS MICROSOFT|CCM_RECENTLY_USED_APPS|1.0
541Add Remove Programsv_GS_ADD_REMOVE_PROGRAMSv_HS_ADD_REMOVE_PROGRAMSMICROSOFT|ADD_REMOVE_PROGRAMS|1.0
542Add Remove Programs (64)v_GS_ADD_REMOVE_PROGRAMS_64v_HS_ADD_REMOVE_PROGRAMS_64MICROSOFT|ADD_REMOVE_PROGRAMS_64|1.0
543BIOSv_GS_PC_BIOSv_HS_PC_BIOSMICROSOFT|PC_BIOS|1.0
544CD-ROMv_GS_CDROMv_HS_CDROMMICROSOFT|CDROM|1.0
545Computer Systemv_GS_COMPUTER_SYSTEMv_HS_COMPUTER_SYSTEMMICROSOFT|COMPUTER_SYSTEM|1.0
546Diskv_GS_DISKv_HS_DISKMICROSOFT|DISK|1.0
547Partitionv_GS_PARTITIONv_HS_PARTITIONMICROSOFT|PARTITION|1.0
548Logical Diskv_GS_LOGICAL_DISKv_HS_LOGICAL_DISKMICROSOFT|LOGICAL_DISK|1.0

Each entry in Table 3.4 specifies the resource type, a unique GroupID, the inventory and inventory history views that present the group data, and the Management Information Format (MIF) class from which the inventory data for the group is derived.

The v_GroupAttributeMap lists the attributes associated with each inventory group, and the v_ReportViewSchema view provides a list of all classes and properties.

This section examined several of the SQL views Microsoft provides. You can learn a lot about the internal structure of ConfigMgr by using the SQL Server Management Studio to explore the database on your own. You may want to look at the views, the underlying tables, and some of the stored procedures ConfigMgr uses. The examples in this section show how you can analyze and understand these objects.

Caution: Do Not Modify the Site Database Directly

The site database is critical to the functioning of your site. Do not attempt to create, delete, or modify any database objects, or to modify data stored in the database, unless asked to do so by Microsoft support personnel. Remember to test all modifications before applying them to your production environment.

Other -----------------
- System Center Configuration Manager 2007 : Components and Communications
- Microsoft Content Management Server : Increasing Search Accuracy by Generating Search Engine Specific Pages
- Microsoft Content Management Server : Configuring Templates to Allow Postings to Return Accurate Last Modified Time
- Active Directory Domain Services 2008 : Modify a Computer Object’s Delegation Properties & Modify a Computer Object’s Location Properties
- Active Directory Domain Services 2008 : Modify a Computer Object’s General Properties & View a Computer Object’s Operating System Properties
- Windows Server 2008 Server Core : Working at the Command Prompt (part 2) - Tracking Command Line Actions with the DosKey Utility
- Windows Server 2008 Server Core : Working at the Command Prompt (part 1)
- Sharepoint 2007 : Customizing a SharePoint Site - Modify a Content Type
- Microsoft BizTalk 2010 : Consuming ASDK-based Adapters - ASDK tools and features
- Microsoft Dynamics AX 2009 : Working with Data in Forms - Creating custom filters
 
 
Top 10 video Game
-   The Elder Scrolls Online | Creating a Character on the console version
-   Hunger Games: Mockingjay Part 2 | First Look
-   Final Fantasy XV Episode Duscae | Version 2.0
-   Mirror's Edge Catalyst
-   Call of Duty: Black Ops 3 Reveal-Trailer
-   LEGO Marvel’s Avengers
-   Dark Souls 3 (PS4, Xbox One)
-   The Last Guardian - E3
-   Final Fantasy 15: Episode Duscae | 'It Takes Two' Sidequest
-   Armikrog [PC] Beak-Beak's Blog
-   Project CARS [WiiU/PS4/XOne/PC] Racing Icon Car Pack
-   Sonic Boom: Fire & Ice [3DS] Debut
Popular tags
Microsoft Access Microsoft Excel Microsoft OneNote Microsoft PowerPoint Microsoft Project Microsoft Visio Microsoft Word Active Directory Biztalk Exchange Server Microsoft LynC Server Microsoft Dynamic Sharepoint Sql Server Windows Server 2008 Windows Server 2012 Windows 7 Windows 8 windows Phone 7 windows Phone 8
programming4us programming4us
 
Popular keywords
HOW TO Swimlane in Visio Visio sort key Pen and Touch Creating groups in Windows Server Raid in Windows Server Exchange 2010 maintenance Exchange server mail enabled groups Debugging Tools Collaborating
programming4us programming4us
PS4 game trailer XBox One game trailer
WiiU game trailer 3ds game trailer
Trailer game
 
programming4us
Women
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server
programming4us
Windows Phone