22.2 Backup of BETY database
It is good practice to make sure you backup the BETY database. Just creating a copy of the files on disk is not enough to ensure you have a valid backup. Most likely if you do this you will end up with a corrupted backup of the database.
To backup the database you can use the pg_dump
command, which will make sure the database id backed up in a consistent state. You can run sudo -u postgres pg_dump -d bety -Z 9 -f bety.sql.gz
, this will create a compressed file that can be used to resotore the database.
In the PEcAn distribution in scripts folder there is a script called backup.bety.sh
. This script will create the backup of the database. It will create multiple backups allowing you to restore the database from one of these copies. The database will be backed up to one of the following files:
- bety-d-X, daily backup, where X is the day of the month.
- bety-w-X, weekly backup, where X is the week number in the year
- bety-m-X, montly backup, where X is the month of the year
- bety-y-X, yearly backup, where X is the actual year.
Using this scheme, we can restore the database using any of the files generated.
It is recommeneded to run this script using a cronjob at midnight such that you have a daily backup of the database and do not have to remember to create these backups. When running this script (either cron or by hand) make sure to place the backups on a different machine than the machine that holds the database in case of a larger system failure.