There are some cases where an independent copy of an existing database is needed. Mostly this is for testing new releases of SystemWeaver before deployment, or for testing new meta models.


When SystemWeaver uses a single file database, like an SQLite database, it is possible to make a copy of the entire database file using Windows file copying operations (Ctrl+C, Ctrl+V). The copies should preferably be made from back-up copies of a database, to assure the integrity of the copy.


Alternatively, a copy can be made using the DataPump feature in the swDatabaseManager tool. This article describes how to do this. 


Prerequisites

  • Server and database compatible version of the swDatabaseManager.exe tool
  • An empty SQLite database to copy to
  • Sole access to the SQLite database


Note: The swDatabaseManager application is not for general distribution and should only be used by an authorized system administrator.


Confirming Database Version

Before getting started, verify the version of the database.

  1. Open the SwDatabaseManager. 
  2. In the top section of the tool, select Type=SQLite and enter the path and file name of the SQLite database that the data is being copied to in the Select database field. 
  3. On the Database tab, click Display info to confirm status and version in the log window to the right.


Creating an Empty SQLite Database

If you don't already have one, you'll need to create an empty SQLite database to copy the data to.


Copying the Data

Now that you have an empty target SQLite database file, you are ready to copy the data from the SQLite over to the empty SQLite database.

  1. Navigate to the DataPump tab.
  2. In the From section: 
    • Select Type=SQLite.
    • In Name, enter the path and file name of the SQLite database that is being copied.
  3. In the To section: 
    • Select Type=SQLite. 
    • In Name, enter the path and file name of the SQLite database that the data is being copied to.
  4. Click the appropriate Copy Database X.XX button that matches the version of the database.

The log window to the right will indicate when the copy is completed.


Note: The duration of time needed to copy will depend on the size of the database and the network latency between the SQLite file and the MS SQL server. To remove the latency factor, place the SQLite database file on the MS SQL server. 


Once the copyover is completed, you are ready to start a SystemWeaver server against the new database.