PerformancePoint Services - 資料庫連線失敗 - 事件 34
適用版本: PerformancePoint Services, SharePoint Server 2010
上次修改主題的時間: 2010-01-04
警示名稱: PerformancePoint Services 資料庫連線失敗
事件識別碼: 34
摘要: Microsoft SharePoint Server 2010 的 PerformancePoint Services 服務需要存取資料庫以儲存註釋、暫存資訊及篩選。
徵狀: 會出現下列一或多項徵狀:
使用者無法瀏覽報表、轉換計分卡或瀏覽 OLAP 檢視。
應用程式集區在網際網路資訊服務 (IIS) 管理員中顯示為已停止。
此事件會出現在事件記錄檔中:事件識別碼:34 描述:Store 無法連線至資料庫。
原因: 可能原因包括下列一或多項:
應用集區服務帳戶的密碼已變更,或帳戶不正確。
PerformancePoint Services 資料庫已損毀,或遭到刪除並已從備份資料庫還原。
解決方法: 確認應用程式集區身分識別具有正確的 SQL Server 權限
確認執行此程序的使用者帳戶,為 PerformancePoint Services 資料庫的 SQL Server db_owner 固定資料庫角色成員。
開啟 SQL Server Management Studio 並連線至資料庫伺服器。
在 [物件總管] 中,展開 [資料庫]。
依序展開 PerformancePoint Services 資料庫節點、[安全性] 及 [使用者]。
注意
若要判斷 PerformancePoint Services 資料庫的名稱,請遵循本文稍後<使用 Windows PowerShell 識別 PerformancePoint 資料庫>中的步驟執行。
確認應用程式集區帳戶已列為 SQL 登入。
注意
若要判斷服務所使用的應用程式集區,請遵循本文稍後<識別應用程式集區>中的步驟執行。
若未列出該帳戶,請遵循下列步驟,使用 PerformancePoint Services 資料庫的 db_owner 固定資料庫角色,將帳戶新增為 SQL Server 登入:
在 [使用者] 節點上按一下滑鼠右鍵,然後按一下 [新增使用者]。
在 [一般] 索引標籤上,選取 [登入名稱] 選項,然後按一下省略符號。
在 [選取登入] 對話方塊中輸入登入名稱,或按一下 [瀏覽] 並從清單中選取登入。
若清單中未顯示應用程式集區帳戶,則必須將此帳戶新增至資料庫伺服器作為 SQL Server 登入。
在 [選取登入] 對話方塊中,按一下 [確定]。
在 [資料庫使用者] 對話方塊中,於 [一般] 索引標籤的 [資料庫角色成員資格] 下,確認已選取 [db_owner] 核取方塊,然後按一下 [確定]。
若已列出該帳戶,請執行下列動作,確認其具有 PerformancePoint Services 資料庫的 db_owner 固定資料庫角色:
在登入上按一下滑鼠右鍵,然後按一下 [內容]。
在 [資料庫使用者] 對話方塊的 [資料庫角色成員資格] 下,確認已選取 [db_owner] 核取方塊,然後按一下 [確定]。
使用 Windows PowerShell 識別 PerformancePoint 資料庫
確認符合下列基本需求:請參閱<Add-SPShellAdmin>。
在 [開始] 功能表上,按一下 [所有程式]。
按一下 [Microsoft SharePoint 2010 產品]。
按一下 [SharePoint 2010 管理命令介面]。
在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:
Get-SPPerformancePointServiceApplication
記下
SettingsDatabase
屬性中的資料庫名稱。
如需詳細資訊,請參閱<Get-SPPerformancePointServiceApplication>。
解決方法: 使用管理中心確認應用程式集區帳戶
在 IIS 管理員中,連線至執行管理中心的伺服器。
展開伺服器節點,然後按一下 [應用程式集區]。
在應用程式集區上按一下滑鼠右鍵,然後按一下 [進階內容]。
注意
若要判斷服務所使用的應用程式集區,請遵循本文稍後<識別應用程式集區>中的步驟執行。
在 [進階內容] 對話方塊的 [處理序模型] 下,按一下 [識別] 帳戶旁的省略符號。
在 [應用程式集區身分識別] 對話方塊中,按一下 [設定]。
在 [設定認證] 對話方塊中,輸入網域帳戶名稱及密碼,然後確認密碼,再按一下 [確定]。
在 [應用程式集區身分識別] 對話方塊中,按一下 [確定]。
在 [進階內容] 對話方塊中,按一下 [確定]。
注意
不需重新啟動應用程式集區,變更即可生效。
解決方法: 使用 Windows PowerShell 從備份還原資料庫
確認符合下列基本需求:請參閱<Add-SPShellAdmin>。
在 [開始] 功能表上,按一下 [所有程式]。
按一下 [Microsoft SharePoint 2010 產品]。
按一下 [SharePoint 2010 管理命令介面]。
在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:
Restore-SPFarm -Directory <備份資料夾名稱> -RestoreMethod {New | Overwrite} -Item <內容資料庫名稱> [-BackupId <GUID>] [-Verbose]
若要將還原的資料庫重新附加至伺服器陣列,請輸入下列命令,然後按 ENTER:
Set-SPPerformancePointServiceApplication -SettingsDatabase <資料庫名稱>
如需詳細資訊,請參閱<Restore-SPFarm>。
注意
建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。
識別應用程式集區
確認符合下列基本需求:請參閱<Add-SPShellAdmin>。
在 [開始] 功能表上,按一下 [所有程式]。
按一下 [Microsoft SharePoint 2010 產品]。
按一下 [SharePoint 2010 管理命令介面]。
在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:
Get-SPPerformancePointServiceApplication
記下
ApplicationPool
下方Name=
之後所列的名稱。在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:
Get-SPServiceApplicationPool | Where-Object {&_.Name -eq " <上一步驟的應用程式集區名稱>" | Format-Table -Property Name,DisplayName,Id
應用程式集區名稱是列為
Id
的 GUID。
如需詳細資訊,請參閱<Get-SPServiceApplicationPool>。
注意
建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。