Oct 2, 2017

Pulse Database Migration into MS SQL Server

Pulse v5.6 introduced support to MS SQL Server (2012 and onwards). This article describes the steps that you need to follow to configure Pulse with MS SQL Server.

Pulse v5.5.1 databases

Pulse v5.5.1 and prior versions were using two databases, one SQL Lite (Monitor.db) and one H2 database (docs.h2.db). If we take the example of a company who has three environment DEV, UAT and PROD, this is how the architecture will look like:

Pulse v5.6 uses only one H2 database

In v5.6, these two databases have been merged into one H2 database by default. The main reasons for this change is to simplify the architecture, this is the first step to centralized database and by having all the data into H2, it is easier to migrate H2 to SQL Server.

The first time Pulse starts after the upgrade, Pulse will migrate all data from Monitor.db and the docs.h2.db to a new docs.h2.db. Depending how big is your database, you might have to wait a few minutes while Pulse is migrating the data. 

When Pulse is migrating the data, you will see this message on the top navigation bar of the web client:

Some Pulse features will work straight away such as the Live Monitor but you will have to wait that the database is ready before running the documentation:

Configure Pulse to use MS SQL Server

You can decide to move to MS SQL Server anytime after the upgrade but you should make sure first that Pulse is working with the new H2 database.

Instead of using H2, you can now ask Pulse to send the data into a centralized MS SQL Server database.

The advantage of using MS SQL Server is a better performance in larger Pulse DBs with concurrent active Pulse users.

When using MS SQL Server, it is recommended that each Pulse has its own database. Upgrading Pulse is a little bit more tricky when the same database is shared across multiple Pulse.

Enable MS SQL Server:

To Enable SQL Server, you need to do the following step:

1. Create a new database on your SQL Server called Pulse (ask your DB Administrator to do this)

2. Create a SQL Server login (user name / password) that has DB owner (DBO) access to the Pulse database.

3. Stop the Pulse services

4. Update SQL server settings in Pulse for TM1confPulse.cfg

[SQLServer]

JDBCURL = localhost:1433;databaseName=Pulse
UserName = {The SQL UserName}
Password = {The SQL password}

The password will be encrypted after Pulse restart.

5. Start the Pulse services

The first time you start the Pulse services, it is going to migrate the data from the docs.h2.db to the SQL server database. The time to migrate H2 to SQL server is approximately twice the time of the migration from Monitor.db to docs.h2.db.

Note: Pulse records the server name and the TM1 service name. Even if you have the same TM1 instance name in DEV, UAT and PROD, you will be able to differentiate the instances with the server name:

Related content

Loading related content