Share via


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 權限

  1. 確認執行此程序的使用者帳戶,為 PerformancePoint Services 資料庫的 SQL Server db_owner 固定資料庫角色成員。

  2. 開啟 SQL Server Management Studio 並連線至資料庫伺服器。

  3. 在 [物件總管] 中,展開 [資料庫]。

  4. 依序展開 PerformancePoint Services 資料庫節點、[安全性] 及 [使用者]。

    注意

    若要判斷 PerformancePoint Services 資料庫的名稱,請遵循本文稍後<使用 Windows PowerShell 識別 PerformancePoint 資料庫>中的步驟執行。

  5. 確認應用程式集區帳戶已列為 SQL 登入。

    注意

    若要判斷服務所使用的應用程式集區,請遵循本文稍後<識別應用程式集區>中的步驟執行。

  6. 若未列出該帳戶,請遵循下列步驟,使用 PerformancePoint Services 資料庫的 db_owner 固定資料庫角色,將帳戶新增為 SQL Server 登入:

    1. 在 [使用者] 節點上按一下滑鼠右鍵,然後按一下 [新增使用者]。

    2. 在 [一般] 索引標籤上,選取 [登入名稱] 選項,然後按一下省略符號。

    3. 在 [選取登入] 對話方塊中輸入登入名稱,或按一下 [瀏覽] 並從清單中選取登入。

      若清單中未顯示應用程式集區帳戶,則必須將此帳戶新增至資料庫伺服器作為 SQL Server 登入。

    4. 在 [選取登入] 對話方塊中,按一下 [確定]。

    5. 在 [資料庫使用者] 對話方塊中,於 [一般] 索引標籤的 [資料庫角色成員資格] 下,確認已選取 [db_owner] 核取方塊,然後按一下 [確定]。

  7. 若已列出該帳戶,請執行下列動作,確認其具有 PerformancePoint Services 資料庫的 db_owner 固定資料庫角色:

    1. 在登入上按一下滑鼠右鍵,然後按一下 [內容]。

    2. 在 [資料庫使用者] 對話方塊的 [資料庫角色成員資格] 下,確認已選取 [db_owner] 核取方塊,然後按一下 [確定]。

使用 Windows PowerShell 識別 PerformancePoint 資料庫

  1. 確認符合下列基本需求:請參閱<Add-SPShellAdmin>。

  2. 在 [開始] 功能表上,按一下 [所有程式]。

  3. 按一下 [Microsoft SharePoint 2010 產品]。

  4. 按一下 [SharePoint 2010 管理命令介面]。

  5. 在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:

    Get-SPPerformancePointServiceApplication

    記下 SettingsDatabase 屬性中的資料庫名稱。

如需詳細資訊,請參閱<Get-SPPerformancePointServiceApplication>。

解決方法:   使用管理中心確認應用程式集區帳戶

  1. 在 IIS 管理員中,連線至執行管理中心的伺服器。

  2. 展開伺服器節點,然後按一下 [應用程式集區]。

  3. 在應用程式集區上按一下滑鼠右鍵,然後按一下 [進階內容]。

    注意

    若要判斷服務所使用的應用程式集區,請遵循本文稍後<識別應用程式集區>中的步驟執行。

  4. 在 [進階內容] 對話方塊的 [處理序模型] 下,按一下 [識別] 帳戶旁的省略符號。

  5. 在 [應用程式集區身分識別] 對話方塊中,按一下 [設定]。

  6. 在 [設定認證] 對話方塊中,輸入網域帳戶名稱及密碼,然後確認密碼,再按一下 [確定]。

  7. 在 [應用程式集區身分識別] 對話方塊中,按一下 [確定]。

  8. 在 [進階內容] 對話方塊中,按一下 [確定]。

    注意

    不需重新啟動應用程式集區,變更即可生效。

解決方法:   使用 Windows PowerShell 從備份還原資料庫

  1. 確認符合下列基本需求:請參閱<Add-SPShellAdmin>。

  2. 在 [開始] 功能表上,按一下 [所有程式]。

  3. 按一下 [Microsoft SharePoint 2010 產品]。

  4. 按一下 [SharePoint 2010 管理命令介面]。

  5. 在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:

    Restore-SPFarm -Directory <備份資料夾名稱> -RestoreMethod {New | Overwrite} -Item <內容資料庫名稱> [-BackupId <GUID>] [-Verbose]

  6. 若要將還原的資料庫重新附加至伺服器陣列,請輸入下列命令,然後按 ENTER:

    Set-SPPerformancePointServiceApplication -SettingsDatabase <資料庫名稱>

如需詳細資訊,請參閱<Restore-SPFarm>。

注意

建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。

識別應用程式集區

  1. 確認符合下列基本需求:請參閱<Add-SPShellAdmin>。

  2. 在 [開始] 功能表上,按一下 [所有程式]。

  3. 按一下 [Microsoft SharePoint 2010 產品]。

  4. 按一下 [SharePoint 2010 管理命令介面]。

  5. 在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:

    Get-SPPerformancePointServiceApplication

    記下 ApplicationPool 下方 Name= 之後所列的名稱。

  6. 在 Windows PowerShell 命令提示字元 (PS C:\>) 處,輸入下列命令並按 ENTER:

    Get-SPServiceApplicationPool | Where-Object {&_.Name -eq " <上一步驟的應用程式集區名稱>" | Format-Table -Property Name,DisplayName,Id

    應用程式集區名稱是列為 Id 的 GUID。

如需詳細資訊,請參閱<Get-SPServiceApplicationPool>。

注意

建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。