Server Backups
No edit summary |
No edit summary |
||
Line 19: | Line 19: | ||
=== Nightly backup === | === Nightly backup === | ||
The nightly back copies everything to <code>merple</code>. It: | The nightly back copies everything to <code>merple</code>. <code>merple</code> exposes <code/var/backups> via samba as <code>/backups</code> | ||
It: | |||
# mounts <code>/mnt/backup</code> to <code>//merple/backups</code>. | # mounts <code>/mnt/backup</code> to <code>//merple/backups</code>. | ||
# iterates over the <code>ms sqlserver</code> databases, backing them up to <code>/mnt/backup/sqlserver/$DAY</code> | # iterates over the <code>ms sqlserver</code> databases, backing them up to <code>/mnt/backup/gonzo/sqlserver/$DAY</code> | ||
# iterates over the <code>mariadb</code> databases, backing them up to <code>/mnt/backup/mysql/$DAY</code> | # iterates over the <code>mariadb</code> databases, backing them up to <code>/mnt/backup/gonzo/mysql/$DAY</code> | ||
# copies the apache config to <code>/mnt/backup/apache2-config/</code> | # copies the apache config to <code>/mnt/backup/gonzo/apache2-config/</code> | ||
# copies the ssl config to <code>/mnt/backup/ssl-config/</code> | # copies the ssl config to <code>/mnt/backup/gonzo/ssl-config/</code> | ||
# | # using rsync directly because smb has no compression and it's too slow otherwise, it copies <code>/var/www/html</code> directly to <code>merple:/srv/backups/gonzo/websites/</code> | ||
# lastly, again using rsync directly, it copies <code>/home/pdcrew/*</code> to <code>merple:/home/pdcrew</code> | |||
=== Other backups === | === Other backups === | ||
In order to give Matt the ability to roll back any damaging database changes (or recover historical data), we back up the MS Sql Server every 4 hours, every Monday and on the first day of the month. These go to <code>/var/opt/mssql/data/backups/$BACKUP_FOLDER</code> and Matt can restore from them using Sql Server Manager. | In order to give Matt the ability to roll back any damaging database changes (or recover historical data), we back up the MS Sql Server every 4 hours, every Monday and on the first day of the month. These go to <code>/var/opt/mssql/data/backups/$BACKUP_FOLDER</code> and Matt can restore from them using Sql Server Manager. |
Latest revision as of 12:53, 13 September 2024
Crontab for gonzo
# m h dom mon dow command # every night (at 5am) back up all databases to merple 0 5 * * * /root/backup_scripts/nightly_backup.sh > /var/log/nightly_backup.log 2>&1 # local backup jobs # give Matt a back up of the sql server databases every 4 hours 0 */4 * * * /root/backup_scripts/sqlserver_backup.sh HOUR > /var/log/hour_backup.log 2>&1 # every Monday 0 4 1 * * /root/backup_scripts/sqlserver_backup.sh WEEK > /var/log/weekly_backup.log 2>&1 # and on the 1st of the month 0 4 1 * * /root/backup_scripts/sqlserver_backup.sh MONTH > /var/log/monthly_backup.log 2>&1
The Scripts
Scripts are located in /root/backup
.
Nightly backup
The nightly back copies everything to merple
. merple
exposes via samba as
/backups
It:
- mounts
/mnt/backup
to //merple/backups
.
- iterates over the
ms sqlserver
databases, backing them up to /mnt/backup/gonzo/sqlserver/$DAY
- iterates over the
mariadb
databases, backing them up to /mnt/backup/gonzo/mysql/$DAY
- copies the apache config to
/mnt/backup/gonzo/apache2-config/
- copies the ssl config to
/mnt/backup/gonzo/ssl-config/
- using rsync directly because smb has no compression and it's too slow otherwise, it copies
/var/www/html
directly to merple:/srv/backups/gonzo/websites/
- lastly, again using rsync directly, it copies
/home/pdcrew/*
to merple:/home/pdcrew
Other backups
In order to give Matt the ability to roll back any damaging database changes (or recover historical data), we back up the MS Sql Server every 4 hours, every Monday and on the first day of the month. These go to /var/opt/mssql/data/backups/$BACKUP_FOLDER
and Matt can restore from them using Sql Server Manager.