The database backup module is available to run from the administration interface.
The Backups are stored in the OpenMRS configuration directory
The two common paths to find the backups are
- C:\Users{UserAccount}\Application Data\OpenMRS\backup
- C:\Application Data\OpenMRS\backup
The steps in the backup are.
- On the Dash Board Click on the Backup Database icon.
- Click on the Execute database backup now
- The backup begins and the progress is shown until completion.
- Once the backup is complete, a message is displayed with the status.
TBD
The native mysqldump tool can also be used to dump a database into a file
mysqldump -u [useraccount] -p --opt --routines openmrs > backupDDMMYY-HHMM.sql
- [useraccount] - the username for accessing the database
- backupDDMMYY-HHMM.sql - the name of the file, recommended naming for example is backup04April16-1425.sql which has a date and time when the backup was done
NOTE The password will be prompted for on the command line
An example command will be
mysqldump -u username -p --opt --routines openmrs > backup04April16-1425.sql
The UgandaEMR installer includes HeidiSQL a tool that allows the restoration of backup files into the backend database.
The native mysql client tool can also be used to load a database from a file
mysql -u [useraccount] -p openmrs < [backup_file]
- [useraccount] - the username for accessing the database
- [backup_file] - the path to the backup file. If the path contains spaces then enclose the path in double quotes for example "C:\Application Data\OpenMRS\backup\backupfile.sql"
NOTE The password will be prompted for on the command line
UgandaEMR 2.0 provides a database restore option. found in the start menu programs/apps section to use it,
- Launch start menu
- Go to "All programs/All apps"
- Under UgandaEMR select "Restore UgandaEMR Database". This will launch a popup window.
- In the Popup window Click install. This gives you a place to browse for a database you wish to restore.
- Select the Database file then click open. A dialogue will appear showing the database you have selected
- Click okay. At this point cmd promopt widnow will show and close after the database has been restored.
The default configuration does not provide adequate speed for restoration of backups. If you have more than 5000 patients follow the steps below to improve restore speed
- Open Notepad as an administrator - this is because the configuration file being edited in located in the C:\Program Files folder which has restrictions on who can edit the files.
- Open the file my.cnf (or my.ini case Windows Explorer is configured to hide the extensions for files)
- Search for the variable innodb_buffer_pool_size and change is value to 512M
- If the variable does not exists add it following the steps below
- Search for the section [mysqld]
- Add innodb_buffer_pool_size=512M as the first line in that section. You can use 30% of available memory for systems with large patient volumes
- Add max_allowed_packet=16M (this caters for the larger size of backup batches now being sent)
- Save the file
- Restart your computer
- Run the following on the command prompt
mysql -u openmrs -p -e "SHOW GLOBAL VARIABLES LIKE 'innodb_buffer_pool_size'"
which will show 536870912 which means the variable has been changed - Start the import again
NOTE Depending on your Windows version the file may be called my.ini and displayed as my in case file extensions for known types are hidden.
Usually for large restores, it is necessary to check the progress of a restore operation.
- Connect to the database via command line
mysql -u openmrs -p openmrs
- Check the tables that have been created by running the command
show tables;
- There are about 160 tables as of UgandaEMR 2.x so this is one measure
- The encounter, visit, obs, patient, person tables are the largest
- Check the status of a table being created
SELECT count(uuid) FROM table_name;
will show how many rows are being added to a table
There may be need to reset the concept dictionary, so follow the steps below:
-
Login as an administrator account on the server where the installation was done
-
Download the concept sql file from https://sourceforge.net/projects/ugandaemr/files/3.0.1/concept_dictonary_ref_3.0.0.sql/download
-
From the start menu select "Execute MySQL Script", then select the concept SQL
-
Restart the computer
This error usually happens for older versions of the backup module, so the fix is to open the backup file and make the following changes
- Replace 'false' with '0'
- Replace 'true' with '1'
Save the changes to the script then run it again
A default backup task is created to run at 15:59 every day, which tends to slow down the system and may lock entry for sites with significant patient and observation data. The steps below allow an administrator to change the time the scheduled backup runs
-
On the home page select Legacy Administration
-
In the left hand menu click the Manage Scheduler link
-
On the Scheduler List click the link on the Database Backup Task
-
On the Database Backup task click the Schedule link
-
Change schedule for the task, add a date in the future so that the task can be run
The default location of backup files for is local Disk C in Users/{UserAccount}/Application Data/OpenMRS/backup folder Or C:/Application Data/OpenMRS/backup.
In cases where a user needs to change the folder where these backups are stored, the following steps should be followed:
-
Login in UgandaEMR
-
Change the databasebackup.folderPath value to a new path to the folder that you would like to save your backups to. You can either enter an absolute path (i.e. 'C:/backup') or a relative path (i.e. like the default value 'backup') which is relative to the OpenMRS application data directory.
-
Click Save after writing your new path.
Now your next database backups will always be saved in the folder you have specified above.