Freigeben über


Greifen Sie auf den WMI-Anbieter für Reporting Services zu

Der Reporting Services-WMI-Anbieter macht zwei WMI-Klassen für die Verwaltung von Berichtsserverinstanzen im einheitlichen Modus durch Skripterstellung verfügbar:

Von Bedeutung

Ab der SQL Server 2012-Version wird der WMI-Anbieter nur für Berichtsserver im nativen Modus unterstützt. Berichtsserver im SharePoint-Modus können über Seiten der SharePoint-Zentraladministration und PowerShell-Skripts verwaltet werden.

Klasse Namespace BESCHREIBUNG
MSReportServer_Instance root\Microsoft\SqlServer\ReportServer\RS_<EncodedInstanceName>\v11 Stellt grundlegende Informationen bereit, die ein Client benötigt, um eine Verbindung mit einem installierten Berichtsserver herzustellen.
MSReportServer_ConfigurationSetting root\Microsoft\SqlServer\ReportServer\RS_<EncodedInstanceName>\v11\Admin Stellt die Installationsparameter und die Laufzeitparameter einer Berichtsserverinstanz dar. Diese Parameter werden in der Konfigurationsdatei für den Berichtsserver gespeichert.

** Wichtig ** Für den Zugriffe auf diese Klasse sind Administratorrechte erforderlich.

Für jede Berichtsserverinstanz wird eine Instanz von jeder der oben erwähnten Klassen erstellt. Sie können alle Microsoft- oder Drittanbietertools verwenden, um auf die WMI-Objekte zuzugreifen, die vom Berichtsserver verfügbar gemacht werden, einschließlich WMI-Programmierschnittstellen, die vom .NET Framework selbst verfügbar gemacht werden. In diesem Thema wird beschrieben, wie Sie auf die WMI-Klasseninstanzen mit dem PowerShell-Befehl "Get-WmiObject" zugreifen und diese verwenden.

Ermitteln des Instanznamens in der Namespacezeichenfolge

Der Instanzname im Namespacepfad für Reporting Services-WMI-Klassen stellt eine Codierung des Instanznamens dar, den Sie angeben, wenn Sie die benannten Reporting Services-Instanzen installieren. Und zwar werden die Sonderzeichen in den Instanznamen codiert. Beispielsweise wird ein Unterstrich (_) als "_5f" codiert, sodass ein Instanzname von "My_Instance" als "My_5fInstance" im WMI-Namespacepfad codiert wird.

Um die codierten Instanznamen der Berichtsserverinstanzen im WMI-Namespacepfad aufzulisten, verwenden Sie den folgenden PowerShell-Befehl:

Get-WmiObject -Namespace root\Microsoft\SqlServer\ReportServer -Class __Namespace -ComputerName hostname | Select Name  

Zugreifen auf die WMI-Klassen mithilfe von PowerShell

Führen Sie den folgenden Befehl aus, um auf die WMI-Klassen zuzugreifen:

Get-WmiObject -Namespace <namespacename> -Class <classname> -ComputerName <hostname>  

Um z. B. auf die MSReportServer_ConfigurationSetting-Klasse der Standardberichtsserverinstanz des Host "myrshost" zuzugreifen, führen Sie den folgenden Befehl aus. Für eine erfolgreiche Ausführungs dieses Befehls muss die Standardberichtsserverinstanz auf myrshost installiert sein.

Get-WmiObject -Namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLSERER\v11\Admin" -Class MSReportServer_ConfigurationSetting -ComputerName myrshost  

Mit dieser Befehlssyntax werden alle Klasseneigenschaftsnamen und -werte ausgegeben. Beachten Sie, dass alle Instanzen der Klasse MSReportServer_ConfigurationSetting zurückgegeben werden, obwohl Sie auf die Klasse im Namespace der Standardberichtserverinstanz (RS_MSSQLSERVER) zugreifen. Wenn myrshost beispielsweise mit der Standardberichtserverinstanz und einer benannten Berichtsserverinstanz namens SHAREPOINT installiert wird, gibt dieser Befehl zwei WMI-Objekte zurück und gibt die Eigenschaftennamen und Werte für beide Berichtsserverinstanzen aus.

Um eine bestimmte Klasseninstanz zurückzugeben, wenn mehrere Instanzen zurückgegeben werden, verwenden Sie den Parameter „-Filter“, um die Ergebnisse basierend auf den Eigenschaften mit eindeutigen Werten, z.B. InstanceName, zu filtern. Wenn Sie z. B. nur das WMI-Objekt für die Standardberichtsserverinstanz zurückgeben möchten, verwenden Sie den folgenden Befehl:

Get-WmiObject -Namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLServer\v11\Admin" -Class MSReportServer_ConfigurationSetting -ComputerName myrshost -Filter "InstanceName='MSSQLSERVER'"  

Abfragen der verfügbaren Methoden und Eigenschaften

Um die in einer der Reporting Services-WMI-Klassen verfügbaren Methoden und Eigenschaften anzuzeigen, reichen Sie die Ergebnisse von Get-WmiObject an den Get-Member-Befehl weiter. Beispiel:

Get-WmiObject -Namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLServer\v11\Admin" -Class MSReportServer_ConfigurationSetting -ComputerName myrshost | Get-Member  

Dokumentation zu den Eigenschaften und Methoden der Reporting Services-WMI-Klassen finden Sie unter ....

Verwenden einer WMI-Methode oder -Eigenschaft

Wenn Sie die WMI-Objekte der Reporting Services-Klassen abgerufen haben und die verfügbaren Methoden und Eigenschaften kennen, können Sie diese Methoden und Eigenschaften verwenden. Wenn z. B. eine Berichtsserverinstanz mit dem Namen SHAREPOINT im integrierten SharePoint-Modus vorhanden ist, rufen Sie die URL für die Website der SharePoint-Zentraladministration mithilfe der folgenden Befehlssequenz ab:

$rsconfig = Get-WmiObject -Namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLServer\v11\Admin" -Class MSReportServer_ConfigurationSetting -ComputerName myrshost -Filter "InstanceName='SHAREPOINT'"  
$rsconfig.GetAdminSiteUrl()  

Siehe auch

Reporting Services-WMI-Anbieterbibliotheksreferenz (SSRS)
RSReportServer-Konfigurationsdatei