PowerShell-Cmdlets (SharePoint-Modus von Reporting Services)
Bei der Installation von SQL Server 2012 Reporting Services im SharePoint-Modus werden auch PowerShell-Cmdlets installiert, die Unterstützung für Berichtsserver im SharePoint-Modus bieten. Die Cmdlets decken drei Funktionalitätskategorien ab.
Installation des gemeinsamen SharePoint-Diensts und -Proxys von Reporting Services.
Bereitstellung und Verwaltung von Reporting Services-Dienstanwendungen und zugeordneten Proxys.
Verwaltung von Reporting Services-Funktionen, z. B. Erweiterungen und Verschlüsselungsschlüssel.
Dieses Thema enthält Folgendes:
Cmdlet Summary
Shared Service Cmdlets
Service Application Cmdlets
Reporting Services functionality related Cmdlets
Basic Samples
Detailed Samples
Create a service application and proxy
Review and update a delivery extension
Get and set Properties of the Reporting Service Application Database
List Data Extensions
Change and list subscription owners
Cmdlet-Zusammenfassung
Um die Cmdlets auszuführen, müssen Sie die SharePoint-Verwaltungsshell öffnen. Sie können auch den Editor für grafische Benutzeroberflächen Windows PowerShell Integrated Scripting Environment (ISE), der in Microsoft Windows enthalten ist. Weitere Informationen finden Sie unter Starten von Windows PowerShell unter Windows Server (https://technet.microsoft.com/library/hh847814.aspx). In den folgenden Cmdlet-Zusammenfassungen verweisen die Verweise auf die Dienstanwendung "databases" auf sämtliche mit einer Reporting Services-Dienstanwendung erstellten und von ihr verwendeten Datenbanken. Dies schließt die Konfigurations- und Warnungsdatenbanken sowie temporären Datenbanken ein.
Wenn Sie bei der Eingabe der PowerShell-Beispiele eine Fehlermeldung mit etwa folgendem Wortlaut sehen:
- Install-SPRSService : Der Begriff 'Install-SPRSService' wird nicht als Name eines Cmdlets, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad enthalten und korrekt ist, und wiederholen Sie den Vorgang.
Eines der folgenden Probleme tritt auf:
Reporting Services im SharePoint-Modus ist nicht installiert, und folglich sind auch keine Reporting Services-Cmdlets installiert.
Sie haben den PowerShell-Befehl in Windows PowerShell oder Windows PowerShell ISE statt in der SharePoint-Verwaltungsshell ausgeführt. Verwenden Sie die SharePoint-Verwaltungsshell, oder fügen Sie dem Windows PowerShell-Fenster mithilfe des folgenden Befehls das SharePoint-Snap-In hinzu:
Add-PSSnapin Microsoft.SharePoint.PowerShell
Weitere Informationen finden Sie unter Verwenden von Windows Powershell zur Verwaltung von SharePoint 2013 (https://technet.microsoft.com/library/ee806878.aspx).
So öffnen Sie die SharePoint-Verwaltungsshell und führen Cmdlets aus
Klicken Sie auf die Schaltfläche Start.
Klicken Sie auf die Gruppe Microsoft SharePoint-Produkte.
Klicken Sie auf SharePoint-Verwaltungsshell.
Um die Befehlszeilenhilfe für ein Cmdlet anzuzeigen, verwenden Sie in der PowerShell-Eingabeaufforderung den PowerShell-Befehl "Get-Help". Beispiel:
Get-Help Get-SPRSServiceApplicationServers
Top
Shared Service- und Proxy-Cmdlets
Die folgende Tabelle enthält die PowerShell-Cmdlets für den gemeinsamen SharePoint-Dienst für Reporting Services.
Cmdlet |
Beschreibung |
---|---|
Install-SPRSService |
Installiert und registriert bzw. deinstalliert den gemeinsamen Reporting Services-Dienst. Dies kann nur auf dem Computer erfolgen, auf dem SQL Server Reporting Services im SharePoint-Modus installiert ist. Für die Installation sind zwei Vorgänge möglich:
Für die Deinstallation sind zwei Vorgänge möglich:
HINWEIS: Wenn sich weitere Computer mit installiertem Reporting Services-Dienst in der Farm befinden, oder wenn noch Reporting Services-Dienstanwendungen in der Farm ausgeführt werden, wird eine Warnmeldung angezeigt. |
Install-SPRSServiceProxy |
Installiert und registriert bzw. deinstalliert den Reporting Services-Dienstproxy in der SharePoint-Farm. |
Get-SPRSProxyUrl |
Ruft die URL(s) für den Zugriff auf den Reporting Services-Dienst ab. |
Get-SPRSServiceApplicationServers |
Ruft alle Server in der lokalen SharePoint-Farm ab, die eine Installation des gemeinsamen Diensts für Reporting Services enthalten. |
Top
Dienstanwendungs- und Proxy-Cmdlets
Die folgende Tabelle enthält die PowerShell-Cmdlets für Reporting Services-Dienstanwendungen und ihre zugeordneten Proxys.
Cmdlet |
Beschreibung |
---|---|
Get-SPRSServiceApplication |
Ruft mindestens eine Reporting Services-Dienstanwendung ab. |
New-SPRSServiceApplication |
Erstellen Sie eine neue Reporting Services-Dienstanwendung und zugeordnete Datenbanken. LogonType-Parameter: Gibt an, ob der Berichtsserver das SSRS-Anwendungspoolkonto oder eine SQL Server-Anmeldung für den Zugriff auf die Berichtsserverdatenbank verwendet. Folgende Werte sind möglich:
|
Remove-SPRSServiceApplication |
Entfernt die angegebene Reporting Services-Dienstanwendung. Dadurch werden auch die zugeordneten Datenbanken entfernt. |
Set-SPRSServiceApplication |
Bearbeitet die Eigenschaften einer vorhandenen Reporting Services-Dienstanwendung. |
New-SPRSServiceApplicationProxy |
Erstellt einen neuen Proxy für die Reporting Services-Dienstanwendung. |
Get-SPRSServiceApplicationProxy |
Ruft mindestens einen Reporting Services-Dienstanwendungsproxy ab. |
Dismount-SPRSDatabase |
Hebt die Einbindung der Dienstanwendungsdatenbank für eine Reporting Services-Dienstanwendung auf. |
Remove-SPRSDatabase |
Entfernen Sie die Dienstanwendungsdatenbanken für eine Reporting Services-Dienstanwendung. |
Set-SPRSDatabase |
Legt die Eigenschaften der einer Reporting Services-Dienstanwendung zugeordneten Datenbanken fest. |
Mount-SPRSDatabase |
Bindet Datenbanken für eine Reporting Services-Dienstanwendung ein. |
New-SPRSDatabase |
Erstellen Sie neue Dienstanwendungsdatenbanken für die angegebene Reporting Services-Dienstanwendung. |
Get-SPRSDatabaseCreationScript |
Gibt für eine Reporting Services-Dienstanwendung das Datenbankerstellungsskript auf dem Bildschirm aus. Sie können dann das Skript in SQL Server Management Studio ausführen. |
Get-SPRSDatabase |
Ruft mindestens eine Reporting Services-Dienstanwendungsdatenbank ab. |
Get-SPRSDatabaseRightsScript |
Gibt für eine Reporting Services-Dienstanwendung das Skript für Datenbankrechte auf dem Bildschirm aus. Es fordert die Eingabe des gewünschten Benutzers und der Datenbank und gibt dann Transact-SQL zurück, das zum Ändern von Berechtigungen ausgeführt werden kann. Sie können dann dieses Skript in SQL Server Management Studio ausführen. |
Get-SPRSDatabaseUpgradeScript |
Gibt ein Datenbankupgradeskript auf dem Bildschirm aus. Das Skript führt ein Upgrade der Reporting Services-Dienstanwendungsdatenbanken auf die Datenbankversion der aktuellen Reporting Services-Installation durch. |
Top
Benutzerdefinierte Reporting Services-Funktionalitäts-Cmdlets
Cmdlet |
Beschreibung |
---|---|
Update-SPRSEncryptionKey |
Aktualisiert den Verschlüsselungsschlüssel für die angegebene Reporting Services-Dienstanwendung und verschlüsselt die Daten erneut. |
Restore-SPRSEncryptionKey |
Stellt einen zuvor gesicherten Verschlüsselungsschlüssel für eine Reporting Services-Dienstanwendung wieder her. |
Remove-SPRSEncryptedData |
Löscht die verschlüsselten Daten für die angegebene Reporting Services-Dienstanwendung. |
Backup-SPRSEncryptionKey |
Sichert den Verschlüsselungsschlüssel für die angegebene Reporting Services-Dienstanwendung. |
New-SPRSExtension |
Registriert eine neue Erweiterung bei einer Reporting Services-Dienstanwendung. |
Set-SPRSExtension |
Legt die Eigenschaften einer vorhandenen Reporting Services-Erweiterung fest. |
Remove-SPRSExtension |
Entfernt eine Erweiterung aus einer Reporting Services-Dienstanwendung. |
Get-SPRSExtension |
Ruft mindestens eine Reporting Services-Erweiterung für eine Reporting Services-Dienstanwendung ab. |
Get-SPRSSite |
Ruft die SharePoint-Websites abhängig davon ab, ob die Funktion "ReportingService" aktiviert ist. Standardmäßig werden Websites zurückgegeben, für die die Funktion "ReportingService" aktiviert ist. |
Basisbeispiele
Gibt eine Liste von Cmdlets zurück, die "SPRS" im Namen enthalten. Dies entspricht der vollständigen Liste mit Reporting Services-Cmdlets.
Get-command –noun *SPRS*
Alternativ erfolgt die Weiterleitung an eine Textdatei namens "commandlist.txt" mit genaueren Details.
Get-command -noun *SPRS*| select name, definition |Format-list | Out-File c:\commandlist.txt
Installieren Sie den Reporting Services SharePoint-Dienst und -Dienstproxy.
Install-SPRSService
Install-SPRSServiceProxy
Starten Sie den Reporting Services-Dienst.
get-spserviceinstance -all |where {$_.TypeName -like "SQL Server Reporting*"} | Start-SPServiceInstance
Geben Sie den folgenden Befehl in der SharePoint-Verwaltungsshell ein, um eine gefilterte Zeilenliste aus der Protokolldatei abzurufen. Durch den Befehl werden Zeilen herausgefiltert, die "ssrscustomactionerror" enthalten. Dieses Beispiel bezieht sich auf die Protokolldatei, die bei der Installation von "rssharepoint.msi" erstellt wurde.
Get-content -path C:\Users\testuser\AppData\Local\Temp\rs_sp_0.log | select-string "ssrscustomactionerror"
Top
Ausführliche Beispiele
Zusätzlich zu den folgenden Beispielen finden Sie weitere Informationen im Abschnitt "Windows PowerShell-Skript" im Thema (Steps 1-4) Windows PowerShell script for Steps 1–4.
Erstellen einer Dienstanwendung und eines Proxys
Dieses Beispielskript führt die folgenden Tasks aus:
Erstellt eine Reporting Services-Dienstanwendung und einen entsprechenden Proxy. Das Skript geht davon aus, dass der Anwendungspool "Mein Anwendungspool" bereits vorhanden ist.
Hinzufügen des Proxys zur Standardproxygruppe
Gewähren Sie der Dienstanwendung Zugriff auf die Inhaltsdatenbank der Webanwendung (Port 80). Das Skript geht davon aus, dass die Website "http://sitename" bereits vorhanden ist.
# Create service application and service application proxy
$appPool = Get-SPServiceApplicationPool “My App Pool”
$serviceApp = New-SPRSServiceApplication “My RS Service App” –ApplicationPool $appPool
$serviceAppProxy = New-SPRSServiceApplicationProxy –Name “My RS Service App Proxy” –ServiceApplication $serviceApp
# Add service application proxy to default proxy group. Any web application that uses the default proxy group will now be able to use this service application.
Get-SPServiceApplicationProxyGroup –default | Add-SPServiceApplicationProxyGroupMember –Member $serviceAppProxy
# Grant application pool account access to the port 80 web application’s content database.
$webApp = Get-SPWebApplication “http://sitename”
$appPoolAccountName = $appPool.ProcessAccount.LookupName()
$webApp.GrantAccessToProcessIdentity($appPoolAccountName)
Überprüfen und Aktualisieren einer Übermittlungserweiterung
Im folgenden PowerShell-Skriptbeispiel wird die Konfiguration der Berichtsserver-E-Mail-Übermittlungserweiterung für die Dienstanwendung mit dem Namen My RS Service App aktualisiert. Aktualisieren Sie die Werte für den SMTP-Servernamen (<email server name>) und den E-Mail-Alias FROM (<your FROM email address>).
$app=get-sprsserviceapplication -Name "My RS Service App"
$emailCfg = Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
$emailXml = [xml]$emailCfg
$emailXml.SelectSingleNode("//SMTPServer").InnerText = “<email server name>”
$emailXml.SelectSingleNode("//SendUsing").InnerText = "2"
$emailXml.SelectSingleNode("//SMTPAuthenticate").InnerText = "2"
$emailXml.SelectSingleNode("//From").InnerText = '<your FROM email address>'
Set-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" -ExtensionConfiguration $emailXml.OuterXml
Wenn Sie im oben genannten Beispiel den genauen Namen der Dienstanwendung nicht kennen, besteht die Möglichkeit, die erste Anweisung umzuschreiben, um die Dienstanwendung auf Grundlage einer Suche nach dem Teilnamen abzurufen. Beispiel:
$app=get-sprsserviceapplication | where {$_.name -like " My RS Ser *"}
Mit dem folgenden Skript werden die aktuellen Konfigurationswerte für die Berichtsserver-E-Mail-Übermittlungserweiterung der Dienstanwendung mit dem Namen "My RS Service App" zurückgegeben. Im ersten Schritt wird der Wert der Variablen $app auf das Objekt der Dienstanwendung festgelegt, die den Namen "My RS Service App" aufweist.
Die zweite Anweisung ruft die Übermittlungserweiterung "Berichtsserver-E-Mail" für das Dienstanwendungsobjekt in der Variablen $app ab und wählt configurationXML aus.
$app=get-sprsserviceapplication –Name "My RS Service App"
Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
Top
Abrufen und Festlegen von Eigenschaften für die Reporting Services-Anwendungsdatenbank
Das folgende Beispiel gibt zunächst eine Liste der Datenbanken und Eigenschaften zurück, sodass Sie die Datenbank-GUID (ID) ermitteln können, die Sie anschließend an den set-Befehl übergeben. Um eine vollständige Liste der Eigenschaften zu erhalten, verwenden Sie Get-SPRSDatabase | format-list.
get-SPRSDatabase | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
Nachfolgend wird ein Beispiel der Ausgabe gezeigt. Ermitteln Sie die ID für die Datenbank, die Sie ändern möchten, und verwenden Sie die ID im SET-Cmdlet.
Id : 56f8d1bc-cb04-44cf-bd41-a873643c5a14
QueryTimeout : 120
ConnectionTimeout : 15
Status : Online
Server : SPServer Name=uetestb01
ServiceInstance : SPDatabaseServiceInstance
Set-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 -QueryTimeout 300
Um sicherzustellen, dass der Wert gesetzt wurde, führen Sie erneut das GET-Cmdlet aus.
Get-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
Top
Auflisten von Datenerweiterungen
Im folgenden Beispiel werden alle Reporting Services-Dienstanwendungen durchlaufen, um eine Auflistung der aktuellen Datenerweiterungen für jede Dienstanwendung anzuzeigen.
$apps = Get-SPRSServiceApplication
foreach ($app in $apps)
{
Write-host -ForegroundColor "yellow" Service App Name $app.Name
Get-SPRSExtension -identity $app -ExtensionType “Data” | select name,extensiontype | Format-Table -AutoSize
}
Beispielausgabe:
Name ExtensionType
---- -------------
SQL Data
SQLAZURE Data
SQLPDW Data
OLEDB Data
OLEDB-MD Data
ORACLE Data
ODBC Data
XML Data
SHAREPOINTLIST Data
Top
Ändern und Auflisten von Abonnementbesitzern
Siehe Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription.
Top
Siehe auch
Konzepte
Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription
Aufrufen der SQL Server PowerShell-Hilfe