How to backup Postgres database on Alfresco under Linux
Setting up the Postgres database backup on Alfresco is a 3 step process. The steps to follow are:
- Create a Shell Script
- Create a Password File
- Setup Cronjob
1.Create a Shell Script
Before writing the script, you have to decide on the location of the script and the backup files
Once decides, we can then move to that script location and create our script file
Create a script dbbackup.sh by typing:
vi dbbackup.sh
Enter the following line in the dbbackup.sh file and save it
#! /bin/bash
/opt/alfresco40d/postgresql/bin/pg_dumpall -c -f /opt/BDRBackup/pg_dumpall.sql
Once saved, make the script executable by typing:
chmod x dbbackup.sh
2. Create a Password File
The password file is required to store the password of the postgres user
Go to the home directory of the user and create the file .pgpass by typing:
vi .pgpass
Enter the following line in the .pgpass file and save it
*:*:*:postgres:PASSWORD
Replace PASSWORD with the Postgres database user password
Once saved, change the permissions of the file. This will ensure that only the current user has permissions on the file
chmod 0600 .pgpass
3. Setup Cronjob
type the following to invoke the crontab for the user
crontab -e
enter the following line at the end to run the job every 5th minute
5 * * * * /opt/CustomCronJobs/dbbackup.sh
if you need further information on cronjobs, refer to https://ezref.info/How to set a Cron job in Linux.html
once saved, restart the cron daemon by typing
sudo service cron stop
sudo service cron start
Monitor the backup folder and check if the pg_dumpall.sql is created