Aracılığıyla paylaş


Reporting Services SharePoint modu için PowerShell cmdlet'leri

Şunlar için geçerlidir: SQL Server Reporting Services (2016) SharePoint Desteklenmiyor Power BI Rapor Sunucusu

SQL Server Reporting Services'in (SSRS) önceki sürümleriyle ilgili içerik için bkz. SQL Server Reporting Services nedir?

SQL Server 2016 Reporting Services SharePoint modunu yüklediğinizde, Rapor Sunucularını SharePoint modunda desteklemek için PowerShell cmdlet'leri yüklenir. Cmdlet'ler üç işlev kategorisini kapsar.

  • Reporting Services SharePoint paylaşılan hizmeti ve ara sunucusunun yüklenmesi.

  • Reporting Services hizmet uygulamalarının ve ilişkili proxy'lerin sağlanması ve yönetilmesi.

  • Uzantılar ve şifreleme anahtarları gibi Reporting Services özelliklerinin yönetimi.

Uyarı

SharePoint ile Reporting Services tümleştirmesi, SQL Server 2016'nın ardından artık kullanılamaz.

Cmdlet özeti

Cmdlet'leri çalıştırmak için SharePoint Yönetim Kabuğu'na açmanız gerekir. Microsoft Windows, Windows PowerShell Tümleşik Betik Ortamı (ISE) ile birlikte gelen grafik kullanıcı arabirimi düzenleyicisini de kullanabilirsiniz. Daha fazla bilgi için bkz. Windows Server'da Windows PowerShell'i başlatma. Aşağıdaki cmdlet özetlerinde, "veritabanları" hizmet uygulamasına yapılan başvurular, Bir Reporting Services hizmet uygulaması tarafından oluşturulan ve kullanılan tüm veritabanlarına başvurur. Bu yapılandırma, uyarı ve geçici veritabanlarını içerir.

PowerShell örneklerini girdiğinizde aşağıdakine benzer bir hata iletisi görürseniz:

  • Install-SPRSService: 'Install-SPRSService' terimi
    cmdlet, işlev, betik dosyası veya çalıştırılabilir program adı. Adın yazımını denetleyin veya bir yol eklenip eklenmediğini denetleyin, yolun doğru olduğunu doğrulayın ve yeniden deneyin.

Aşağıdaki sorunlardan biri oluşuyor:

  • Reporting Services SharePoint modu yüklü değildir ve bu nedenle Reporting Services cmdlet'leri yüklenmez.

  • PowerShell komutunu SharePoint Yönetim Kabuğu yerine Windows PowerShell veya Windows PowerShell ISE'de çalıştırmıştınız. Aşağıdaki komutu kullanarak SharePoint Yönetim kabuğunu kullanın veya SharePoint Ek Bileşenini Windows PowerShell penceresine ekleyin:

    Add-PSSnapin Microsoft.SharePoint.PowerShell  
    

SharePoint Yönetim Kabuğu'nı açın ve cmdlet'leri çalıştırın

  1. Başlat tuşuna basın.

  2. Microsoft SharePoint Ürünleri grubunu seçin.

  3. SharePoint Yönetim Kabuğu'na tıklayın.

Cmdlet'in komut satırı yardımını görüntülemek için PowerShell komut isteminde PowerShell 'Get-Help' komutunu kullanın. Örneğin:

Get-Help Get-SPRSServiceApplicationServers

Paylaşılan hizmet ve proxy cmdlet'leri

Aşağıdaki tabloda Reporting Services SharePoint paylaşılan hizmeti için PowerShell cmdlet'leri yer alır.

Cmdlet Description
Install-SPRSService Reporting Services paylaşılan hizmetini yükler ve kaydeder veya kaldırır. Bu eylem yalnızca SharePoint modunda SQL Server Reporting Services yüklemesi olan makinede yapılabilir. Yükleme için iki işlem gerçekleşir:

-Reporting Services hizmeti grubuna yüklenir.

-Reporting Services hizmet örneği geçerli makineye yüklenir.

Kaldırma için iki işlem gerçekleşir:

-Reporting Services hizmeti geçerli makineden kaldırılır.

-Reporting Services hizmeti gruptan kaldırılır.



Grup içinde Reporting Services hizmetinin yüklü olduğu başka makineler varsa veya hala grup içinde çalışan Reporting Services hizmet uygulamaları varsa bir uyarı iletisi görüntülenir.
Install-SPRSServiceProxy SharePoint grubundaki Reporting Services hizmet proxy'sini yükler ve kaydeder veya kaldırır.
Get-SPRSProxyUrl Reporting Services hizmetine erişmek için URL'leri alır.
Get-SPRSServiceApplicationServers Reporting Services paylaşılan hizmetinin yüklemesini içeren yerel SharePoint grubundaki tüm sunucuları alır. Bu cmdlet, paylaşılan hizmeti hangi sunucuların çalıştırdığını ve bu nedenle yükseltilmesi gerektiğini belirlemek için Reporting Services yükseltmeleri için kullanışlıdır.

Hizmet uygulaması ve proxy cmdlet'leri

Aşağıdaki tabloda Reporting Services hizmet uygulamaları ve ilişkili proxy'leri için PowerShell cmdlet'leri yer alır.

cmdlet'i Description
Get-SPRSServiceApplication Bir veya daha fazla Reporting Services hizmet uygulaması nesnesi alır.
New-SPRSServiceApplication Yeni bir Reporting Services hizmet uygulaması ve ilişkili veritabanları oluşturun.

LogonType Parametresi: Rapor sunucusunun rapor sunucusu veritabanına erişmek için SSRS Uygulama Havuzu hesabını mı yoksa SQL Server oturum açma hesabını mı kullandığını belirtir. Geçerli değerler şunlardır:

0 Windows Kimlik Doğrulaması

1 SQL Server

2 Uygulama Havuzu Hesabı (varsayılan)
Remove-SPRSServiceApplication Belirtilen Reporting Services hizmet uygulamasını kaldırır. Bu cmdlet, ilişkili veritabanlarını da kaldırır.
Set-SPRSServiceApplication Mevcut bir Reporting Services hizmet uygulamasının özelliklerini düzenler.
New-SPRSServiceApplicationProxy Yeni bir Reporting Services hizmeti uygulama proxy'si oluşturur.
Get-SPRSServiceApplicationProxy Bir veya daha fazla Reporting Services hizmet uygulaması proxy'sini alır.
Dismount-SPRSDatabase Bir Reporting Services hizmet uygulaması için hizmet uygulaması veritabanlarını çıkartır.
Remove-SPRSDatabase Reporting Services hizmet uygulaması için hizmet uygulaması veritabanlarını kaldırın.
Set-SPRSDatabase Raporlama Hizmetleri hizmet uygulamasıyla ilişkili veritabanlarının özelliklerini ayarlar.
Mount-SPRSDatabase Raporlama Hizmetleri hizmet uygulaması için veritabanlarını bağlar.
New-SPRSDatabase Belirtilen Reporting Services hizmet uygulaması için yeni hizmet uygulaması veritabanları oluşturun.
Get-SPRSDatabaseCreationScript Bir Reporting Services hizmet uygulaması için veritabanı oluşturma betiğini ekrana aktarır. Ardından betiği SQL Server Management Studio'da çalıştırabilirsiniz.
Get-SPRSDatabase Bir veya daha fazla Reporting Services hizmet uygulaması veritabanı alır. örneğin özelliklerini değiştirmek için Set-SPRSDatabase cmdlet'ini kullanabilmek için komutunu kullanarak hizmet uygulaması veritabanının querytimeoutkimliğini alın. Bu makaledeki Raporlama Hizmeti uygulama veritabanının Özelliklerini alma ve ayarlama örneğine bakın.
Get-SPRSDatabaseRightsScript Bir Reporting Services hizmet uygulamasının ekranına veritabanı hakları betiğinin çıktısını alır. İstenen kullanıcı ve veritabanını ister, ardından izinleri değiştirmek için çalıştırabileceğiniz işlem SQL'i döndürür. Ardından bu betiği SQL Server Management Studio'da çalıştırabilirsiniz.
Get-SPRSDatabaseUpgradeScript Ekrana bir veritabanı yükseltme betiği oluşturur. Betik, Reporting Services hizmet uygulaması veritabanlarını geçerli Reporting Services yüklemesinin veritabanı sürümüne yükseltmektedir.

Reporting Services özel işlevsellik cmdlet'leri

Cmdlet Description
Update-SPRSEncryptionKey Belirtilen Reporting Services hizmet uygulaması için şifreleme anahtarını güncelleştirir ve verilerini yeniden şifreler.
Restore-SPRSEncryptionKey Raporlama Hizmetleri hizmet uygulaması için daha önce yedeklenmiş bir şifreleme anahtarını geri yükler.
Remove-SPRSEncryptedData Belirtilen Reporting Services hizmet uygulaması için şifrelenmiş verileri silin.
Backup-SPRSEncryptionKey Belirtilen Reporting Services hizmet uygulaması için şifreleme anahtarını yedekler.
New-SPRSExtension Reporting Services hizmet uygulamasına yeni bir uzantı kaydeder.
Set-SPRSExtension Mevcut Bir Reporting Services uzantısının özelliklerini ayarlar.
Remove-SPRSExtension Bir Reporting Services hizmet uygulamasından uzantıyı kaldırır.
Get-SPRSExtension Bir Reporting Services hizmet uygulaması için bir veya daha fazla Reporting Services uzantısı alır.

Geçerli değerler şunlardır:



Teslim

DeliveryUI

Render

Data

Security

Authentication

EventProcessing

ReportItems

Tasarımcı

ReportItemDesigner

ReportItemConverter

ReportDefinitionCustomization
Get-SPRSSite "ReportingService" özelliğinin etkinleştirilip etkinleştirilmediğine göre SharePoint sitelerini alır. Varsayılan olarak, "ReportingService" özelliğini etkinleştiren siteler döndürülür.

Temel örnekler

Adında 'SPRS' bulunan cmdlet'lerin listesini döndürür. Bu liste, Reporting Services cmdlet'lerinin tam listesidir.

Get-command -noun *SPRS*  

Veya biraz daha ayrıntılı olarak commandlist.txtadlı bir metin dosyasına aktarabilirsiniz.

Get-command -noun *SPRS* | Select name, definition | Format-List | Out-File c:\commandlist.txt  

Reporting Services SharePoint hizmeti ve hizmet proxy'sini yükleyin.

Install-SPRSService  
Install-SPRSServiceProxy  

Reporting Services hizmetini başlatın.

get-spserviceinstance -all |where {$_.TypeName -like "SQL Server Reporting*"} | Start-SPServiceInstance  

Günlük dosyasından filtrelenmiş bir satır listesi döndürmek için SharePoint Yönetim Kabuğu'ndan aşağıdaki komutu girin. Komut, "ssrscustomactionerror" içeren satırları filtreler. Bu örnekte, rssharepoint.msi yüklendiğinde oluşturulan günlük dosyası incelenmiştir.

Get-content -path C:\Users\testuser\AppData\Local\Temp\rs_sp_0.log | select-string "ssrscustomactionerror"  

Ayrıntılı örnekler

Aşağıdaki örneklere ek olarak, Adım 1-4 için Windows PowerShell betiği makalesindeki "Windows PowerShell Betiği" bölümüne bakın.

Reporting Services hizmet uygulaması ve ara sunucusu oluşturma

Bu örnek betik aşağıdaki görevleri tamamlar:

  1. Raporlama Hizmetleri hizmet uygulaması ve ara sunucusu oluşturun. Betik, "Uygulama Havuzum" adlı uygulama havuzunun zaten mevcut olduğunu varsayar.

  2. Proxy'yi varsayılan proxy grubuna ekleme

  3. Hizmet uygulamasına bağlantı noktası 80 web uygulamasının içerik veritabanına erişim izni verin. Betikte sitenin https://sitename zaten var olduğu varsayılır.

# 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 "https://sitename"  
$appPoolAccountName = $appPool.ProcessAccount.LookupName()  
$webApp.GrantAccessToProcessIdentity($appPoolAccountName)  
  

Reporting Services teslim uzantısını gözden geçirme ve güncelleştirme

Aşağıdaki PowerShell betiği örneği, adlı My RS Service Apphizmet uygulaması için rapor sunucusu e-posta teslim uzantısının yapılandırmasını güncelleştirir. SMTP sunucusu (<email server name>) ve FROM e-posta diğer adı (<your FROM email address>) değerlerini güncelleştirin.

$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  

Yukarıdaki örnekte, hizmet uygulamasının tam adını bilmiyorsanız, hizmet uygulamasını kısmi ad aramasına göre almak için ilk deyimi yeniden yazabilirsiniz. Örneğin:

$app=get-sprsserviceapplication | where {$_.name -like " ssrs_testapp *"}  

Aşağıdaki betik, "Reporting Services Uygulaması" adlı hizmet uygulaması için rapor sunucusu e-posta teslim uzantısının geçerli yapılandırma değerlerini döndürür. İlk adım, $app değişkeninin değerini " RS Service Uygulamam " adlı hizmet uygulamasının nesnesine ayarlar

İkinci deyim, $app değişkenindeki hizmet uygulaması nesnesi için 'Rapor Sunucusu E-postası' teslim uzantısını alır ve configurationXML'yi seçer.

$app=get-sprsserviceapplication -Name "Reporting Services Application"  
Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml  

Ayrıca, önceki iki deyimi tek bir deyim olarak yeniden yazabilirsiniz:

get-sprsserviceapplication -Name "Reporting Services Application" | Get-SPRSExtension -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml  

Raporlama Hizmeti uygulama veritabanının özelliklerini alma ve ayarlama

Aşağıdaki örnek önce veritabanlarının ve özelliklerin listesini döndürür, böylece daha sonra set komutuna sağladığınız veritabanı guid'sini (ID) belirleyebilirsiniz. Özelliklerin tam listesi için kullanın Get-SPRSDatabase | format-list.

get-SPRSDatabase | select id, querytimeout,connectiontimeout, status, server, ServiceInstance   

Aşağıdaki çıkış bir örnektir. Değiştirmek istediğiniz veritabanının kimliğini belirleyin ve SET cmdlet'indeki kimliği kullanın.

  • 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  

Değerin ayarlandığını doğrulamak için GET cmdlet'ini yeniden çalıştırın.

Get-SPRSDatabase -identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 | select id, querytimeout,connectiontimeout, status, server, ServiceInstance  

Reporting Services veri uzantılarını listeleme

Aşağıdaki örnek, her Reporting Services hizmet uygulamasında döngü yapar ve her birinin geçerli veri uzantılarını listeler.

$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  
}  

Örnek çıkış:

  • Name ExtensionType

    ---- -------------

    SQL Data

    SQLAZURE Data

    SQLPDW Data

    OLEDB Data

    OLEDB-MD Data

    ORACLE Data

    ODBC Data

    XML Data

    SHAREPOINTLIST Data

Reporting Services abonelik sahiplerini değiştirme ve listeleme

Bkz. Reporting Services abonelik sahiplerini değiştirmek ve listelemek ve abonelik çalıştırmak için PowerShell kullanma.