PerformancePoint Services - Database Connection Failed - Event 34 (SharePoint Server 2010)

 

Applies to: SharePoint Server 2010, PerformancePoint Services

Alert Name:   PerformancePoint Services database connection failed

Event ID:   34

Summary:   The PerformancePoint Services in Microsoft SharePoint Server 2010 service requires access to a database to store annotations, temporary information, and filters.

Symptoms:   One or more of the following symptoms appears:

  • Users cannot navigate reports, render scorecards, or navigate OLAP views.

  • The application pool appears as stopped in Internet Information Services (IIS) Manager.

  • This event might appear in the event log: Event ID: 34 Description: Store cannot connect to database.

Cause:   One or more of the following might be the cause:

  • The password for the application pool service account was changed, or the account is not the correct one.

  • The PerformancePoint Services database is corrupted, or it was deleted and restored from a backup database.

Resolution:   Ensure that the application pool identity has the correct SQL Server permissions

  1. Verify that the user account that is performing this procedure is a member of the SQL Server db_owner fixed database role for the PerformancePoint Services database.

  2. Open SQL Server Management Studio and connect to the database server.

  3. In Object Explorer, expand Databases.

  4. Expand the PerformancePoint Services database node. Expand Security, and then expand Users.

    Note

    To determine the name of the PerformancePoint Services database, follow the steps in "To identify the PerformancePoint database by using Windows PowerShell," later in this article.

  5. Ensure that the application pool account is listed as a SQL login.

    Note

    To determine which application pool the service uses, follow the steps in "To identify the application pool," later in this article.

  6. If the account is not listed, add the account as a SQL Server login with the db_owner fixed database role for the PerformancePoint Services database by following these steps:

    1. Right-click the Users node, and then click New User.

    2. On the General tab, select the Login name option, and then click the ellipsis.

    3. In the Select Login dialog box, type the login name, or click Browse and select the login from the list.

      If the application pool account does not appear in the list, it must be added to the database server as a SQL Server login.

    4. In the Select Login dialog box, click OK.

    5. In the Database User dialog box, on the General tab, under Database role membership, ensure that the db_owner check box is selected, and then click OK.

  7. If the account is listed, verify that it has the db_owner fixed database role for the PerformancePoint Services database by doing the following:

    1. Right-click the login, and then click Properties.

    2. In the Database User dialog box, under Database role membership, ensure that the db_owner check box is selected, and then click OK.

To identify the PerformancePoint database by using Windows PowerShell

  1. Verify that you meet the following minimum requirements: See Add-SPShellAdmin.

  2. On the Start menu, click All Programs.

  3. Click Microsoft SharePoint 2010 Products.

  4. Click SharePoint 2010 Management Shell.

  5. At the Windows PowerShell command prompt (PS C:\>), type the following command, and then press ENTER:

    Get-SPPerformancePointServiceApplication

    Record the name of the database from the SettingsDatabase property.

For more information, see Get-SPPerformancePointServiceApplication.

Resolution:   Verify the application pool account by using Central Administration

  1. In IIS Manager, connect to the server that is running Central Administration.

  2. Expand the server node, and then click Application Pools.

  3. Right-click the application pool, and then click Advanced Properties.

    Note

    To determine which application pool the service uses, follow the steps in "To idenitfy the application pool," later in this article.

  4. In the Advanced Properties dialog box, under Process Model, click the ellipsis next to the Identity account.

  5. In the Application Pool Identity dialog box, click Set.

  6. In the Set Credentials dialog box, type the domain account name and password, confirm the password, and then click OK.

  7. In the Application Pool Identity dialog box, click OK.

  8. In the Advanced Properties dialog click OK.

    Note

    You do not have to restart the application pool for the changes to take effect.

Resolution:   Restore the database from a backup by using Windows PowerShell

  1. Verify that you meet the following minimum requirements: See Add-SPShellAdmin.

  2. On the Start menu, click All Programs.

  3. Click Microsoft SharePoint 2010 Products.

  4. Click SharePoint 2010 Management Shell.

  5. At the Windows PowerShell command prompt (PS C:\>), type the following command, and then press ENTER:

    Restore-SPFarm -Directory <Backup folder name> -RestoreMethod {New | Overwrite} -Item <Content database name> [-BackupId <GUID>] [-Verbose]

  6. To reattach the restored database to the farm, type the following command, and then press ENTER:

    Set-SPPerformancePointServiceApplication -SettingsDatabase <Database name>

For more information, see Restore-SPFarm.

Note

We recommend that you use Windows PowerShell when performing command-line administrative tasks. The Stsadm command-line tool has been deprecated, but is included to support compatibility with previous product versions.

To identify the application pool

  1. Verify that you meet the following minimum requirements: See Add-SPShellAdmin.

  2. On the Start menu, click All Programs.

  3. Click Microsoft SharePoint 2010 Products.

  4. Click SharePoint 2010 Management Shell.

  5. At the Windows PowerShell command prompt (PS C:\>), type the following command, and then press ENTER:

    Get-SPPerformancePointServiceApplication

    Record the name listed after Name= under ApplicationPool.

  6. At the Windows PowerShell command prompt (PS C:\>), type the following command, and then press ENTER:

    Get-SPServiceApplicationPool | Where-Object {&_.Name -eq " <ApplicationPool name from previous step>" | Format-Table -Property Name,DisplayName,Id

    The application pool name is the GUID listed as Id.

For more information, see Get-SPServiceApplicationPool.

Note

We recommend that you use Windows PowerShell when performing command-line administrative tasks. The Stsadm command-line tool has been deprecated, but is included to support compatibility with previous product versions.