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.
The following theme uses this plugin
Latest updated documentation: https://github.com/panakour/oc-backup-plugin/blob/master/README.md
Usage
- To configure the backup system navigate to the Settings > System > Backup.
- 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
.
-
Pedro Vasconcelos
Found the plugin useful on 28 Feb, 2021
I like the plugin, it's simple to operate, but lacks the automatic backups with cron...
-
Andriy Haydash
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?
-
gviabcua
Found the plugin useful on 15 Nov, 2018
Please, add permission to your plugin. thanks
-
Panagiotis Koursaris author
Replied on 17 Nov, 2018
update to the latest version (1.0.8) and check your permissions.
-
AMERIP
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 paththemes
. Any ideas to solve it? -
Niek de Melker
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
-
Justin Patterson
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
-
Panagiotis Koursaris author
Replied on 16 Feb, 2018
You should increase max_execution_time in your PHP configuration.
-
devillom
Found the plugin useful on 19 Dec, 2017
after install create dir in storage/app/panakour-backup
-
Panagiotis Koursaris 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 |