Create a PerformancePoint Service Application Database without GUIDs


There are many resources out there for creating the majority of SharePoint 2010 Service Applications using PowerShell. This gives you more control in terms of defining clean database names. One specific application that I have yet to find a legitimate answer for is the PerformancePoint Service Application.

Some people have suggestions on how to rename the database in SQL Server and then run a Set-SPPerformancePointServiceApplication command in Powershell. While this seems accurate (and in reality is close), it doesn’t rename the MDF or LDF files.

One of many possible solutions is to do the following in PowerShell:

$performancePointSAName = "PerformancePoint Service" $saAppPoolName = "SharePoint Web Services" 
$newDb = "SP2010_SA_PerformancePoint_DB" 
New-SPPerformancePointServiceApplication -Name $performancePointSAName -ApplicationPool $saAppPoolName 
New-SPPerformancePointServiceApplicationProxy -Default -Name "$performancePointSAName Proxy" -ServiceApplication $performancePointSAName 
Get-SPServiceInstance | where-object {$_.TypeName -eq "PerformancePoint Service"} | Start-SPServiceInstance

This will give you a working PerformancePoint application with a GUID. Next, in SQL Management Studio; backup the existing PerformancePoint database to a .bak file.

Create a new database with a clean name such as “SP2010_SA_PerformancePoint_DB”, restoring from your .bak file. Next, back in the SharePoint Management Shell; run the following command:

Set-SPPerformancePointServiceApplication -Identity $performancePointSAName -SettingsDatabase $newDb 
Advertisements