Microsoft.SqlServer.Management.Utility Namespace

The Microsoft.SqlServer.Management.Utility namespace contains classes that represent the SQL Server Utility objects.

Classes

Computer

The Computer type represents a computer in the Utility domain, including certain physical properties that indicate the computer's performance and loading.

Computer.Key

The Computer.Key class represents the key that identifies the Computer class.

ComputerCollection

The ComputerCollection class represents a collection of Computer objects that represent all the computers managed in the Utility domain.

DataFileAdapter

The DataFileAdapter type represents information about a data file.

DeployedDac

The DeployedDac type represents a database application structure, in the form of a DAC package that has been installed on to a computer running an instance of SQL Server.

DeployedDac.Key

The DeployedDac.Key class represents the key that identifies the DeployedDac class.

DeployedDacCollection

The DeployedDacCollection class represents a collection of DeployedDac objects that represent all the deployed DACs in the Utility domain.

LogFileAdapter

The LogFileAdapter interface describes the extended properties that must be implemented by log file adapters.

ManagedInstance

The ManagedInstance type represents an instance of SQL Server that is managed by the SQL Server Utility services to control policy, and deployments.

ManagedInstance.Key

The ManagedInstance.Key class represents the key that identifies the ManagedInstance class.

ManagedInstanceCollection

Represents a collection of managed instances of SQL Server in the SQL Server Utility.

NameKey

Identifies Microsoft.SqlServer.Management.Utility objects that use a name property as an Sfc key.

Utility

The Utility class represents a utility control point (UCP) that defines methods and properties to manage one or more remote instances of SQL Server.

Utility.Key

The Utility.Key class defines methods and properties that are used to identify the Utility within the System File Checker (SFC).

UtilityException

The UtilityException class defines methods and properties that record utility exception information. It is the base class for all utility exception types.

Volume

The Volume type represents information about a volume or disk partition on a computer in the SQL Server Utility domain.

Volume.Key

The Volume.Key class represents the key that identifies the Volume class.

VolumeCollection

The VolumeCollection class represents a collection of Volume objects that represent all the volumes on a computer.

Interfaces

IDataFilePerformanceFacet

The IDataFilePerformanceFacet is an interface that represents the data file performance. This is used in determining performance based policies.

ILogFilePerformanceFacet

The ILogFilePerformanceFacet is an interface that represents the log file performance. This is used in determining performance-based policies.

Enums

DatabaseState

Database state enumeration.

HealthState

The HealthState enumeration contains values that are used to specify the state of the deployment.

ManagementState

Enumerates the possible states of a ManagedInstance object.

Remarks

The top-level instance is the Utility class, which proves the connection to the instance of SQL Server. The children of the Utility class are the other main type:

The SQL Server Utility objects can be used to discover instances of SQL Server on the network and include them in the SQL Server Utility. These instances can be converted into managed instances, which are then governed by the SQL Server Utility and can participate in deployments and policy management.

The SQL Server Utility uses DAC packages, which can be created using the DAC object and SMO objects in Design mode. A DAC package can be created by extraction from a list of components that make up a database application, or by importing a DAC package from a file. A list of DAC packages is stored in the SQL Server Utility in a catalog. A DAC package can be selected from this list and deployed onto targets that are suitable managed instances of SQL Server governed by the SQL Server Utility.

The Microsoft.SqlServer.Management.Utility namespace resides in the Microsoft.SqlServer.Management.Utility.dll file. Additionally, some supporting objects are in the Microsoft.SqlServer.Management.UtilityEnum.dll file. You need to import these files to access the classes in the Microsoft.SqlServer.Management.Utility namespace.

By using the Microsoft.SqlServer.Management.Utility namespace, you can:

  • Discover instances of SQL Server.

  • Include instances of SQL Server in the SQL Server Utility by making them managed or unmanaged.

  • Extract a DAC.

  • Import a DAC package.

  • Deploy a DAC on suitable instances in the SQL Server Utility.

  • Manage SQL Server Utility host resources.

  • Manage SQL Server instance resources.

  • Create and apply policies to target objects in the SQL Server Utility.