109

Product support

Visit this product's website for support.

Categories

Introduction

This plugin let you create backups of your files and databases. It uses the amazing laravel package spatie/laravel-backup.

Requirements

This backup package requires PHP 7.1 or higher with the ZIP module and Laravel 5.5 or higher. It's not compatible with Windows servers.

The plugin needs free disk space where it can create backups. Ensure that you have at least as much free space as the total size of the files you want to backup.

Make sure mysqldump is installed on your system if you want to backup MySQL databases.

Make sure pg_dump is installed on your system if you want to backup PostgreSQL databases.

Make sure mongodump is installed on your system if you want to backup Mongo databases.

Features

  • With just a click you can:
    • Create backups of the whole application.
    • Create backups of the database only.
    • Create backups of the files only.
  • Currently support local and dropbox storage driver.
  • Support various Database Driver (MySQL, PostgreSQL, SQLite and Mongo).
  • You can easily include and exclude some files using the UI.
  • Support gzip to reduce the database size.

Latest updated documentation: https://github.com/panakour/oc-backup-plugin/blob/master/README.md

Usage

  1. To configure the backup system navigate to the Settings > System > Backup.
  2. You can navigate to the backup section from the top main menu. From there you can create and download your backups.

Dumping the database

mysqldump and pg_dump are used to dump the database. If they are not installed in a default location, you can add a key named dump.dump_binary_path in October's own database.php config file. Only fill in the path to the binary. Do not include the name of the binary itself.

If your database dump takes a long time, you might exceed the default timeout of 60 seconds. You can set a higher (or lower) limit by providing a dump.timeout config key which specifies, in seconds, how long the command may run.

Here's an example for MySQL:

//config/database.php
'connections' => [
    'mysql' => [
        'driver'    => 'mysql'
        ...,
        'dump' => [
           'dump_binary_path' => '/path/to/the/binary', // only the path, so without `mysqldump` or `pg_dump`
           'use_single_transaction',
           'timeout' => 60 * 5, // 5 minute timeout
           'exclude_tables' => ['table1', 'table2'],
           'add_extra_option' => '--optionname=optionvalue', 
        ]  
    ],

Also you can create backups from the command line using Artisan. image image image

  • Found the plugin useful on 28 Feb, 2021

    I like the plugin, it's simple to operate, but lacks the automatic backups with cron...

  • Found the plugin useful on 23 Jan, 2019

    A good plugin, thanks.

    Any way we can have this plugin also store media files and uploads?

  • Found the plugin useful on 15 Nov, 2018

    Please, add permission to your plugin. thanks

  • author

    Replied on 17 Nov, 2018

    update to the latest version (1.0.8) and check your permissions.

  • Found the plugin not useful on 15 Jun, 2018

    It works well to save the database but it does not save the themes. It keeps an empty .zip, I only use the path themes. Any ideas to solve it?

  • Found the plugin useful on 29 Mar, 2018

    Very nice plugin, Only i would love to see an option to remove an backup. Now you only can download it and it exists forever. I also had a problem with updating the settings. clearing config:cache a few times eventually solved this problem. i noticed this in my development and production environment. Also a schedular would be nice, or at least an artisan command so it is callable from terminal. really like the work you did on this. Nice plugin

  • Found the plugin useful on 16 Feb, 2018

    Neat little plugin, does as it is supposed to with minimal effort. Thanks.

    Question though. I know I can change the timeout for the database dump portion, but how can I increase the timeout for the file portion? If I'm doing a simple backup it happens quickly and is fine. But when I want a full site backup it times out after 30 seconds.

    Symfony\Component\Debug\Exception\FatalErrorException: Maximum execution time of 30 seconds exceeded in /var/www/acme.org/october/plugins/panakour/backup/vendor/spatie/laravel-backup/src/Tasks/Backup/Zip.php:82

  • author

    Replied on 16 Feb, 2018

    You should increase max_execution_time in your PHP configuration.

  • Found the plugin useful on 19 Dec, 2017

    after install create dir in storage/app/panakour-backup

  • author

    Replied on 19 Dec, 2017

    thank you for your review. with the new updated version, if the directory does not exist will be created automatically.

1.0.11

Fix symfony/process dependency

Apr 21, 2020

1.0.10

Added webdav driver (thanks to @AdrienAdB )

Apr 02, 2020

1.0.9

Add option to create backup of whole project independently of settings

Feb 15, 2019

1.0.8

Add permissions.

Nov 17, 2018

1.0.7

Display backup list even if exist only in the old path

Feb 20, 2018

1.0.6

Change the backups path to fix 404 error on apache server because of the default .htaccess

Feb 14, 2018

1.0.5

Support Dropbox storage driver (Fix if not configured yet)

Jan 08, 2018

1.0.4

Support Dropbox storage driver

Jan 07, 2018

1.0.3

Settings button directly in toolbar of backup list. Fixed monitored backups name

Dec 19, 2017

1.0.2

Fixes bug when no backup folder exist

Dec 19, 2017

1.0.1

First version of backup plugin.

Dec 16, 2017