Skip to content

Latest commit

 

History

History
56 lines (36 loc) · 1.52 KB

creating-and-restoring-backups.md

File metadata and controls

56 lines (36 loc) · 1.52 KB

Creating and restoring backups

There are two scripts for export and import backups.

These scripts can be called manually or by cron.

Project has a backup directory with a one file .gitignore for ignoring everything in this directory except that file.

Backup is an archive with all project's data which required to be stored:

  • Dump of MySQL database
  • Dump of Redis database
  • project's www/.env file
  • complete www/upload directory
  • ignored config files from www/application/config directory:
    • social.php
    • email.php
    • communities.php

Also script backups these two files:

  • docker's .env file
  • www/application/config/database.php

But they are not using for restoring because of different root's passwords fom MySQL.

Create backup (export data)

When you create a new backup there will be recreated a directory named last-backup (with unarchived data) and a new archive.

Archive has a date and time stamp in the name: backup_2020-08-13_18-32-50.tar.gz

To create a new backup just run:

./bin/backup/create.sh

Restore backup (import data)

For restoring you can use the following command. Project's docker containers must be started.

./bin/backup/restore.sh <path-to-backup-archive-file>

For example

./bin/backup/restore.sh ./backup/backup_2020-08-13_18-32-50.tar.gz

All files will be put to their correct locations. Redis and Memcached containers will be restarted.