Difference between revisions of "Backups"

From CSCWiki
Jump to navigation Jump to search
(added note about /users/backup)
(MySQL backups)
Line 2: Line 2:
   
 
Miscellaneous backups (including backups of home directories for expired accounts) are stored in /users/backup (accessible on any system that NFS-mounts [[User-data|/users]]).
 
Miscellaneous backups (including backups of home directories for expired accounts) are stored in /users/backup (accessible on any system that NFS-mounts [[User-data|/users]]).
  +
  +
== MySQL ==
  +
  +
As of January 2010, backups of [[MySQL]] databases are run weekly and stored in /users/backup/mysql, a git repository accessible only to members of [[Systems_Committee|syscom]] (for obvious reasons). In there is a .sql file containing a backup of each database present in the MySQL database.
  +
  +
This backup is run automatically from /etc/cron.weekly/mysql-backup on [[Machine_List#caffeine|caffeine]]. A git repository was chosen because the SQL dumps are by default text files which are easily handled by git (notably, git handles deltas for this format extremely well). As a result, it is possible to retrieve an old backup of a database or view differences from week to week by using the regular git tools. git stores compressed deltas for all previous revisions, so this has the effect of storing many old copies of databases at minimal storage cost.

Revision as of 20:28, 24 January 2010

We take nightly Kerberos and LDAP backups. The backups are stored on artificial-flavours in /var/backups/krb5 and /var/backups/slapd respectively. These are executed as cronjobs in /etc/cron.daily.

Miscellaneous backups (including backups of home directories for expired accounts) are stored in /users/backup (accessible on any system that NFS-mounts /users).

MySQL

As of January 2010, backups of MySQL databases are run weekly and stored in /users/backup/mysql, a git repository accessible only to members of syscom (for obvious reasons). In there is a .sql file containing a backup of each database present in the MySQL database.

This backup is run automatically from /etc/cron.weekly/mysql-backup on caffeine. A git repository was chosen because the SQL dumps are by default text files which are easily handled by git (notably, git handles deltas for this format extremely well). As a result, it is possible to retrieve an old backup of a database or view differences from week to week by using the regular git tools. git stores compressed deltas for all previous revisions, so this has the effect of storing many old copies of databases at minimal storage cost.