Server Backups
m (Clive moved page Favog Wiki Backups to Server Backups) |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:IT]] | [[Category:IT]] | ||
Crontab for <code>gonzo</code> | |||
# 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 | == The Scripts == | ||
Scripts are located in <code>/root/backup</code>. | |||
=== Nightly backup === | |||
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>. | |||
# 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/gonzo/mysql/$DAY</code> | |||
# copies the apache config to <code>/mnt/backup/gonzo/apache2-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 === | ||
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.