KBI 311059 Argent Advanced Technology SQL Database Migration

Version

Argent Advanced Technology – All Versions

Date

Friday, 5 Sep 2014

Summary

Moving Your SQL Database To A New Server (Argent AT)

Occasionally, clients have the need to move the Original Database to a new server due to performance issues or a reconfiguration of infrastructure

This can be performed even if you do not know if a Trusted Connection is being used

There are two different methods to migrate the SQL Server:

Method 1: Complete uninstall/reinstall of Argent AT, restoring backed up XTB files

OR

Method 2: Detach/reattach SQL database, re-point Argent AT registry entries

The method chosen will depend on size of database, amount of acceptable down-time, etc

Technical Background

N/A

Resolution

Pre-work

Prior to moving the Argent database, complete the following tasks:

  1. Create a full backup of the Argent database
  2. Make a full backup of the Argent folder hierarchy (typically c:\Argent)
  3. Make a backup of the Argent registry hierarchy (HKLM\Software\Argent for x86 architecture, HKLM\WOW6432Node\Software\Argent for x64 architecture)

Method 1

  1. Backup all Argent AT Products using the Export Data | Backup Database option from within the Argent GUI as shown below:
  2. Change the above options as needed for your situation

    Repeat the above for EACH Argent product

  3. Create new SQL database on the new SQL Server for Argent
  4. De-install the current Argent Advanced Technology installation — Leave the current Argent Database online
  5. Reinstall the Argent Advanced Technology on same server – but point installation to new SQL Database/server
  6. Do a GUI Restore for each Argent Product

    This populates the data into the new SQL Database

  7. The above steps must be repeated for each product

  8. Stop All the Argent Services on the Primary Engine
  9. Truncate any table matching the patterns FROM THE NEW DATABASE:
    1. *_PRD_Mother
    2. *_PRD_Daughter
    3. ARGSOFT_COMPLIANCE_LOG_ARCHIVE

  10. Run the Import Wizard from the New Database SQL Enterprise Manager, and Import data from the tables listed in (7) (old database) to the same tables in the new database

    This could take a long time, depending on how much predictor data the customer has

  11. Start the Argent Services

Method 2

Notes

For the purposes of this document, the “Source” Database Server is the server where the Argent database resides currently

The “Target” Database Server is the destination where we want the database to reside after the move

This document refers to SQL Server Management Studio (SQL Server 2000/2005/2008), however you may only have access SQL Enterprise Manager in a SQL Server 2000 environment

Screenshots are from SQL Server Management Studio

The example shows moving the Argent AT database from host (SQL Server 2005) to host (SQL Server 2008) but the general concepts are applicable to all Argent products

To fall back to the original state, simply restore the exported Registry settings from the file created in the Pre-Work Step 3

Protocol

  1. Stop all Argent Services on the Argent host and Disable them to ensure they don’t start automatically if you have to reboot the server for any reason during this upgrade
  2. Using SQL Enterprise Manager or SQL Server Management Studio, DETACH the Argent database
  3. Copy the datafiles (*.mdf and *.ldf) for the Argent database from the Source server to the Target server
  4. Reattach the Argent database on the Target server
  5. Bring the Argent database online (if it doesn’t come back online when reattached)
  6. Open REGEDIT on the Argent server and navigate to HKLM\Software\Argent (x86 architecture) and replace ALL instances of the Source with the Target server name (key is SQL_SERVER and you will find it under each Argent product folder in HKLM\Software\Argent)
  7. Restart the Argent Services on the Argent server and change them back to Automatic

Finishing up

At this point you’re mostly done – just need to make one other tweak:

  1. Custom Crystal Reports

    If the customer has any custom Crystal reports that manually specify the SQL server, ensure that these are updated