ReportServer Database silindiğinde SCOM reporting yeniden kurulmadan nasıl yapılandırılır.
Merhabalar ,
Operations Manager Reporting , Verileri çekecek rapor template’lerini SQL Reporting Services’ın kurulumunda oluşan ReportServer database ve ReportServerTempDB databaselerinde depolar ve buralardan işleyerek kullanır. ReportServer database’inin bir şekilde ( fiziksel olarak , disk hataları v.b. , yanlışlıkla ) silinmesi durumunda ise SCOM raporları kullanılmaz duruma gelir ve SCOM konsolunda reporting tıklandığında aşağıdaki hata alınır.
Date: 3/27/2012 10:52:35 AM
Application: System Center Operations Manager 2007 R2
Application Version: 6.1.7221.61
Severity: Error
Message: Loading reporting hierarchy failed.
System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: The report server cannot open a connection to the report server database. A connection to the database is required for all requests and processing. ---> Microsoft.ReportingServices.Library.ReportServerDatabaseUnavailableException: The report server cannot open a connection to the report server database. A connection to the database is required for all requests and processing.
at Microsoft.ReportingServices.WebServer.WebServiceHelper.EnsureModeFromCatalog()
at Microsoft.ReportingServices.WebServer.WebServiceHelper.EnsureRSNativeMode()
at Microsoft.ReportingServices.WebServer.ReportingService2005..ctor()
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.ReportingService.ReportingService2005.ListChildren(String Item, Boolean Recursive)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.ManagementGroupReportFolder.GetSubfolders(Boolean includeHidden)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingSubtree(TreeNode node, ManagementGroupReportFolder folder)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingTree(ManagementGroupReportFolder folder)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingTreeJob(Object sender, ConsoleJobEventArgs args)
Ayrıca İnternet Explorerdan SQL Reporting URL’e ulaşılmak istenildiğinde ise aşağıdaki hata alınır.
The report server cannot open a connection to the report server database. A connection to the database is required for all requests and processing.(rsReportServerDatabaseUnavailable)
Böyle bir durumda SCOM reporting’I kaldırıp yeniden kurmaya gerekj kalmadan raporları tekrar almak mümkündür. Bu işlem için yapılması gereken adımlar ise şunlardır.
İlk olarak SQL Reporting database’lerini tutan SQL Server’da ReportServer database veya ReportServerTemp Database’den herhangi bir mevcut ise halihazırdaki connectionlar drop seçeneği ile etkisiz hale getirilerek detach edilir.
Sonra bu database dosyalarının .mdf ve .ldf dosyaları orjinal lokasyonlarından farklı bir lokasyona alınır.
SQL Server Reporing Services üzerinde Reporting Services Configuration Tool’u açılarak servisin hangi SQL Server’a ve instance name’e yönlendirildiği not edilir.
Aynı şekilde bu toolda halihazırda hangi servis account’unun kullanıldığı kontrol edilir.
Sonrasında Reporting Services Configuration Tool’da Change Database seçeneği yeni boş databaseleri oluşturmak için tıklanılır.
Create a new report server database opsiyonu seçilerek devam edilir
Burada ya eskiden yönlendirilen SQL Server instance ismi ya da başka bir SQL Server kullanılacak ise onun SQLServerName’i\instancename’i olacak şekilde yazılır. Örneğin SQL Server testsql instance name ise testinst olursa şu şekilde yazmak gerekir. Testsql\testinst
Test connection ile test yapılarak test başarılı olursa next butonu ile devam edilir.
Database server name kısmında SQL üzerinde görünecek database isimleri belirlenir. Ben örnekte SCOMReportServer olarak belirttim.
Credential settings alanında herhangi bir uninstallation işlemi yapılmadığı ve zaten servis account Data Warehouse Report Deployment Account olduğu için Authentication Type service credentials olarak seçilir. Bu işlem otomatik olarak db tarafında hakların atanmasını uygulayacaktır.Bunu SCOM reporting rolünü kaldırmadığımız için uygulayabiliyoruz. Aksi taktirde raporları işlem zamanından itibaren alırdık ve eski rapor içeriğini görüntüleyemezdik.
Özet sayfası control edilerek devam edilir.
Herşeyin başarılı olduğu doğrulanır.
SCOM Reporting kurulumunda gerekli data source otomatik olarak hazırlanarak SQL Reporting servis web sayfasına uygulanır. Fakat bizim yaptığımız işlem manuel bir işlem olduğu için bu uygulamayı kendimiz yapmamız gerekmektedir. Bu yüzden Report URL I açıp burada show details seçeneği seçilir. Göreceğiniz üzere herhangi bir data source bulunmamakta
Burada New Data Source tıklanılşarak içerik aşağıdaki şekilde doldurulur.
Name : Data Warehouse Main
Hide in tile view – selected
Enable this data source – selected
Data source type : Microsoft SQL Server
Connection String : data source= Testsql\testinst;initial catalog=OperationsManagerDW;Integrated Security=SSPI
Connect using: Credentials are not required
And then click OK
Artık data source ‘u görecek ve Klasör ve içeriklerin senkronize olmaya başladıklarına şahit olacaksınız.
Bu senkronize işlemini tetiklemek için SCOM ile ilgili servisleri RMS üzerinde durdurup yeniden başlatmak gerekecektir.
System Center Data Access
System Center Management Configuration
System Center Management
Bu aşamadan sonra rapor klasörlerinin ve içeriklerinin senkronize olmasını beklemek gerekecektir.