Migrating an EmpowerID database to a new Microsoft SQL Server instance

1. Login to each of your EmpowerID Internet Information Services (IIS) servers and open Services Microsoft Management Console (MMC). Locate and stop the following services (if present):

NOTE: To find out which version of EmpowerID you are running please see the following KB article: How to find which version of EmpowerID you are using.

EmpowerID 2012
EmpowerID Agent
EmpowerID Execution Runtime
EmpowerID RBAC Services
EmpowerID Workflow Service

EmpowerID 2013 and EmpowerID 2014
EmpowerID Web Role Service
EmpowerID Worker Role Service

Please take note of which EmpowerID services are present and started before stopping them: once the migration is finished, we will need to restore the EmpowerID services to the same state prior to the database migration.

NOTE: Make sure to stop these services on all EmpowerID Internet Information Services (IIS) servers - it is important that no communication occurs to the EmpowerID database during the migration.

2. Login to each of your EmpowerID Internet Information Services (IIS) servers and open Internet Information Services (IIS) Manager. In Connections pane on the left hand side, expand the IIS Server node and then expand the Sites node. Right click on the web site that contains the EmpowerID applications and choose Manage Web Site > Stop.

3. In Connections pane on the left hand side, click on the Application Pools node. Right click and stop the following EmpowerID Application Pools (if present):

EmpowerID 2012
EmpowerID

EmpowerID 2013
EmpowerID Exchange Services
EmpowerID SQL Web Services
EmpowerID Web Service Garden
EmpowerID Web Services
EmpowerID Workflow WebServices
EmpowerIDV5
EmpowerIDV5 IDPs

EmpowerID 2014 SP1
EmpowerID Exchange Services
EmpowerID IDPs
EmpowerID SQL Web Services
EmpowerID Web API
EmpowerID Reports
EmpowerID Web Service Garden
EmpowerID Web Services
EmpowerID Workflow WebServices
EmpowerIDV5

NOTE: Make sure to stop the EmpowerID web site and EmpowerID Application Pools on ALL EmpowerID Internet Information Services (IIS) servers - it is important that no communication occurs to the EmpowerID database during the migration.

4. Login to the SQL Server instance hosting the EmpowerID database using Microsoft SQL Server Management Studio. Take note of the EmpowerID database name, then right click on the EmpowerID database and choose Tasks > Back Up...

5. Ensure the Backup type is set to Full. Under the Destination pane, choose a Back up to: location. It is recommended to click the Remove button to delete the default entry and click the Add... button to define your own location for this backup.

6. On the Select Backup Destination screen, click the File name radio button and click the … ellipses button.

7. In the Locate Database Files dialog that appears, choose a backup path and provide a filename ending with the .bak extension.

8. Once the database backup is completed successfully, copy the .bak file from the source Microsoft SQL server to the destination Microsoft SQL server. The most common method to perform this task is to use the disk volume Administrative shares (\\servername\C$, \\servername\D$, etc.)

9. Login to the destination Microsoft SQL Server instance using Microsoft SQL Server Management Studio. Right click the Databases node and choose Restore Database.

10. On the Restore Database screen, under the Source for restore section, click the radio button for From device: and click the … ellipses button

11. In the Specify Backup dialog that appears, click the Add button.

12. In the Locate Backup File dialog that appears, browse to the database backup file that you copied from the source Microsoft SQL server in step 8. Click on the .bak file to select it and click OK.

NOTE: Network drives will not show up in the Locate Backup File dialog.

13. Back on the Specify Backup dialog, click OK to confirm the Backup location.

14. Back on the Restore Database screen, under the Destination for restore section, click on the To database: text field and enter the same name that you recorded in step 4. Under the Select the backup sets to restore: section, check the Restore box and click OK to begin the restore.

15. (EmpowerID 2012 ONLY) If you are migrating an EmpowerID 2012 database please be sure to set the database owner to "sa" and enable the SQL broker once the database restoration is complete. To do this, click on the EmpowerID database to select it and then click the New Query button at the top left of the Microsoft SQL Server Management Studio toolbar.

Copy and paste the following T-SQL statement into the query window and click on the Execute button or press F5 to commit the changes.

DECLARE @execsbauth NVARCHAR(max) = N'ALTER AUTHORIZATION ON DATABASE::['+DB_NAME()+'] TO [sa];'
EXEC sp_executesql @execsbauth
IF((SELECT is_broker_enabled FROM sys.databases WHERE name = DB_NAME())=0)
BEGIN
DECLARE @execsb NVARCHAR(max) = N'
ALTER DATABASE ' + DB_NAME() + '
SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
ALTER database ' + DB_NAME() + ' SET NEW_BROKER
ALTER DATABASE ' + DB_NAME() + ' SET ENABLE_BROKER
ALTER DATABASE ' + DB_NAME() + '
SET MULTI_USER WITH ROLLBACK IMMEDIATE;'
EXEC sp_executesql @execsb
END
GO

NOTE: This T-SQL statement should NOT be executed against an EmpowerID 2013 database.

16. Once the database restore is completed successfully, login to each of your EmpowerID Internet Information Services (IIS) servers and open the Registry Editor. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\TheDotNetFactory\EmpowerID and right click > Modify the EmpowerIDDatabase String Value.

17. Change the Data Source= entry listed at the beginning of the string to reflect the Fully Qualified Domain Name (FQDN) of the destination Microsoft SQL Server.

NOTE: Make sure to adjust this registry value on all EmpowerID Internet Information Services (IIS) servers.

18. Login to each of your EmpowerID Internet Information Services (IIS) servers and open Internet Information Services (IIS) Manager. In Connections pane on the left hand side, expand the IIS Server node and then expand the Sites node. Right click on the web site that contains the EmpowerID applications and choose Manage Web Site > Start.

19. In Connections pane on the left hand side, click on the Application Pools node. Right click and start the following EmpowerID Application Pools (if present):

EmpowerID 2012
EmpowerID

EmpowerID 2013
EmpowerID Exchange Services
EmpowerID SQL Web Services
EmpowerID Web Service Garden
EmpowerID Web Services
EmpowerID Workflow WebServices
EmpowerIDV5
EmpowerIDV5 IDPs

NOTE: Make sure to start the EmpowerID web site and EmpowerID Application Pools on all EmpowerID Internet Information Services (IIS) servers.

20. Login to each of your EmpowerID Internet Information Services (IIS) servers and open Services Microsoft Management Console (MMC). Locate and start the following services in this order (if present):

EmpowerID 2012
EmpowerID Workflow Service
EmpowerID Agent
EmpowerID Execution Runtime
EmpowerID RBAC Services

EmpowerID 2013
EmpowerID Web Role Service
EmpowerID Worker Role Service

Please restore the EmpowerID services to the same state prior to the database migration, as noted in step 1. If a service was Disabled before, leave it Disabled now. If it was started before, start it now.

NOTE: Make sure to perform this step on all EmpowerID Internet Information Services (IIS) servers.

21. If an error occurs when attempting to start the EmpowerID Application Pools or EmpowerID services in Step 19 or Step 20, please verify that the EmpowerID service account being used as the configured identity on the EmpowerID Application Pools and EmpowerID services has "db_owner" rights to the EmpowerID database. To verify this, login to the destination EmpowerID SQL server using Microsoft SQL Server Management Studio. Expand Security > Logins.

Verify the EmpowerID service account is shown here. If the EmpowerID service account is missing, right click Logins and choose New Login... On the Login - New screen, verify the radio button is clicked to "Windows authentication" and click the Search... button at the top right.

On the Select User or Group pane, enter the EmpowerID service account and click the Check Names button.

Back on the Login - New screen, click the User Mapping page on the left hand side. Scroll until you see the EmpowerID database. In the "Users mapped to this login:" pane, check the "Map" column. In the "Database role membership for: EmpowerID" pane, check the "db_owner" entry.

Click OK to create the Login. After the Login is created successfully, attempt to start the EmpowerID Application Pools or EmpowerID services again and confirm they start without issue.

22. Open the EmpowerID Management Console and confirm you are able to authenticate and login. The migration is now complete.

23. As a post-migration task you will want to schedule SQL maintenance tasks on the destination SQL server to ensure good database health and performance over time. Please view the following guide for assistance: SQL Performance Maintenance.

Please feel free to contact us by e-mail at support@empowerid.com or by phone at (877) 996-4276 (Option 2) if you have any questions or concerns regarding this guide.

Have more questions? Submit a request

Comments

Powered by Zendesk