This plugin let you create backups of your files and databases. It uses the amazing laravel package spatie/laravel-backup.
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.
Settings > System > Backup
.The first thing you need to do is get an authorization token at Dropbox. A token can be generated in the App Console for any Dropbox API app. You'll find more info at the Dropbox Developer Blog.
Then add to the config/filesystems.php
file the followed array with your token and app name:
'disks' => [
...
'dropbox' => [
'driver' => 'dropbox',
'app' => 'app-name',
'authorizationToken' => 'generated-access-token',
]
]
Be sure that you select Dropbox
option from settings.
Then add to the config/filesystems.php
file the followed array with your token and app name:
'disks' => [
...
'webdav' => [
'driver' => 'webdav',
'baseUri' => 'YOUR_WEBDAV_DOMAIN',
'path_prefix' => '/remote.php/dav/files/USERNAME/', //for nextcloud
'path_alias' => '',
'userName' => 'USER',
'password' => 'PASSWORD',
],
]
Be sure that you select Webdav
option from settings.
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
.