Backup and restore

From TempusServa wiki
Jump to navigation Jump to search

Everything in a TempusServa installation is stored in the underlying database.

A full backup plan will only require frequent snapshots of the database.

The only exception to the all-in-the-database policy is

  • Connection string for the database
  • Container ressources such as SSL certficates

Depending on the amount of data stored in the database, we usually recommend using af differencial backup.

Note: The database should allways be stopped during backups, to ensure integrity of a filesystem backup.

UNIX server tools

Using the Command line tools you can set up a RSYNC differntial backup easily.

Procedure for a Windows backup server

  1. Tempus Serva Server:
    1. Run tsrsyncdump.sh (test run)
    2. Run tsinstallcronjobs.sh (future scheduled runs)
  2. Windows backup machine:
    1. Install Cygwin tools: http://www.cygwin.com/
    2. Edit the serverBackup.sh to fit your environment
    3. Run serverBackup.bat (test run)
    4. Create a scheduled job pointing to serverBackup.bat file (future scheduled runs)

The service will call the tsrsyncdump.sh every 24 hours, making a dump ready for remote synchronization.

Windows server backup

  1. Create .bat file
    1. Use mysqldump to backup all of the databases
    2. Copy files to safe location (network drive etc.)
  2. Execute above file scheduled from the Windows task manager

Configuring the mysqldump i straitfroward using the MySQL documentation and examples

Backup synchronization (Linux server to Windows storage)

The following article describes incremental backup files can be transferred from a Linux server to a Windows client

Secure rsync from Linux webservers to Windows backup host.pdf

Corrupted databases

Try in the following order

  1. Run the mysqlcheck tool
  2. Dump database if possible using mysqldump
  3. Connect remotely and dump SQL script files of each table