#3

Product support

Get help in the plugin support forum.

Categories

  • Developer Tools
  • Utility

This plugin adds backed-end database and application backups management features to OctoberCMS.

Features

  • Backup Database and Application files with mouse click
  • Amazon S3, Rackspace, Dropbox Cloud Storage support
  • Configurable scheduler for automatic backups
  • Extensive settings options
  • Restore database from backup
  • Artisan commands for working with console

Important note: Backup Manager to work requires proc_open function to be enabled in php configuration.

Usage

After installation plugin will register backend Backup Manager menu position. From there you will be able to manage your backups.

Create Application Backup button will create backup with all your project files and database dump file. You can change which files will be backup in Plugin Settings. Default settings will take project root and exclude storage and vendor folders from it.

Create Database Backup button will create only database backup.

Clean Old Backups button will delete all backups older than 90 days. This value is configurable in Plugin Settings

To download backup just click position on the list.

Restore button will restore database from selected backup.

Important note: Restore action will restore only your database! To restore application files you must overwrite them manually.

Searching backups list

Backups names are created dynamically from current datetime. So you can easily search for backups created at specific date. For example to find backups created 2015-05-20 just type 20150520 in search box.

Maximum execution time error

If you see following error Maximum execution time of .. seconds exceeded than your current server configuration does not allow for dynamic change of this php value. Probably your application backup is to large and PHP cannot do this process in single request.

Here are some tips what can you do:

  1. Change max_execution_time property value in your PHP configuration.
  2. Use Scheduler to perform automatic backups.
  3. Use Console commands to perform backups.

Settings

This plugin ships with a settings page. Go to Settings and you will see a menu item Backup Manager listed under Backup section.

Source

In this section you can specify which folders and files will be included or excluded. For default plugin will take root path and exclude storage and vendor folder. You can specify path to folders and individual files as well. For example to exclude your database config file, add this: config/database.php

Destination

Property Description
File System The filesystem(s) on which the backups will be stored. Choose one or more of the filesystems you configured in config/filesystems.php
Backups Path The path where the backups will be saved. This path is relative to the root you configured on your chosen filesystem(s)
Prefix Prefix for backup name
Suffix Suffix for backup name

Clean

Property Description
Max age in days The clean action will remove all backups on all configured filesystems that are older then this amount of days.

MySQL

Property Description
MySQL dump path The path to the mysqldump binary. You can leave this empty if the binary is installed in the default location.
Use extended insert If your server supports it you can turn on extended insert. This will result in a smaller dump file and speeds up the backup process.

Important note: Currently this plugin only supports MySQL and PostgreSQL database drivers.

Scheduler

In this section you can specify automatic plugin tasks for database backup, application backup and clean old backups actions.

Each of those tasks can be run on a regular basis. See October Documentation for details.

Important note: For scheduler to work you need to add this cron job on your server: * php /path/to/artisan schedule:run 1>> /dev/null 2>&1 . Remember to replace path to artisan command. Follow Laravel documentation for details.

Amazon S3, Rackspace, Dropbox Cloud Storage

Plugin supports following storage drivers:

  • Local Storage
  • Amazon S3 Cloud Storage
  • Rackspace Cloud Storage
  • Dropbox Cloud Storage

More drivers can be added on feature requests. Just create an issue with [Feature Request] in title and I will see what can be done.

The filesystem configuration file is located at config/filesystems.php. Within this file you may configure all of your "disks". Example configurations for each supported driver is included in the configuration file. So, simply modify the configuration to reflect your storage preferences and credentials!

Important note: For Amazon S3 and Rackspace to work you must install October Drivers Plugin.

Dropbox configuration

First go to config/filesystems.php and add following code if not present already:

'dropbox'   => [
    'driver'   => 'dropbox',
    'token'  => '',
    'key'    => '',
    'secret' => '',
    'app'    => '',
],

Go to https://www.dropbox.com/developers/apps to obtain all necessary credentials.

Fill in configuration section with your credentials.

Go to plugin settings and check dropbox filesystem in Destination tab.

Console commands

Plugin will create three new artisan commands for working with console.

backup:run command will run new backup process. You can specify --only-db option for backup only database.

backup:clean command will run clean old backups process.

backup:restore command will run restore backup process. You can specify --backup-id option for selecting backup ID to restore or choose Id from list of backups printed in console.

Important note: Restore command will restore only your database! To restore application files you must overwrite them manually.

  • Found the plugin useful on 17 May, 2017

    Brilliantly easy, super reliable and generally couldn't do without it.

  • Found the plugin useful on 30 Dec, 2016

    This is a very good must have plugin. I agree with the other reviews though about wanting a way to upload a backup that is not in the database.

  • Found the plugin useful on 26 Jul, 2016

    Its a good plugin but in my opinion has a fatal flaw (unless i am missing something).

    The backup archives are listed in the database which means you cannot upload a backup that you have previously downloaded and stored elsewhere. So it works fine if you want to roll back to a previous state but if you wanted to reinstate the application from scratch you have to insert db rows to get the backups to display. It would not be hard to implement a backup import/upload feature.

  • Found the plugin useful on 16 Dec, 2015

    Mindblowing plugin and excellent support from Renatio. This is simply a must for any serious OctoberCMS developer.

  • Found the plugin useful on 20 Aug, 2015

    Can't remember how many times backup feature saved my life and that plugin allow me manage all backups in backend. Also Michal (developer) giving fast good feedbacks! Thank you

  • Found the plugin useful on 2 Jul, 2015

    Is a mistake for developers around the world, not to consider the backups of your application and database. Nowadays, the chances to lose information is huge. This plugin is amazing. Remember to install mysql package in your webserver, if you have 2 different servers: (one for webserver and one for database server)...

  • Found the plugin useful on 8 Jun, 2015

    This is EXACTLY what I was looking for. I am currently using DigitalOcean with Laravel Forge and this works perfectly. Must have app on every October site. Just purchased it for a couple projects. Have been hoping that DigitalOcean offered easy database and application backups but they have been really slow to implement that functionality so this app is PERFECT.

    Can't thank you enough. Very happy with this and keep up the killer work. I'll be supporting this plugin with every project and highly recommending it to others.

    Cheers!

1.0.10

Allow to add extra parameters to MySQL dump command. Better database error handling.

Mar 12, 2017

1.0.9

Check for driver name, not connection name.

Mar 12, 2017

1.0.8

Fix issue with not deleted temp files after backup finished.

Jun 18, 2016

1.0.7

Fix bug with empty port in database config.

Mar 09, 2016

1.0.6

Add system requirements check and fix bug with download backup response.

Aug 23, 2015

1.0.5

Dropbox Adapter Support

Jul 20, 2015

1.0.4

Fix bug for PHP 5 < 5.6

Jul 05, 2015

1.0.3

Minor changes.

Jun 15, 2015

1.0.2

Added PostgreSQL support.

Jun 05, 2015

1.0.1

First version of Backup Manager plugin.

May 26, 2015