XF2 [8WR] Database Backup

XF2 [8WR] Database Backup [Paid] 2.1.0.8

No permission to buy ($10.00)
I have 2 questions.

Say I want to offload a backup to a remote place.

1) Can I not take a backup on the local server but have a backup on the remote server?
So basically it creates a backup, sends it to remote server and deletes the one in the local server. Is this possible? Or do I have to keep always at least 1 backup on local?

2) Basically no matter what I do, I always have to keep double the storage space on the local server, right? Like say my stuff is 10 GB big + 10 GB backup. So I need 20GB server space. Is it possible to shave off some space somehow?
 
Jaxel updated XF2 [8WR] Database Backup with a new update entry:

2.1.0.6 - CHANGELOG

  • Remote backup options have been redone so you can now upload to multiple different backup services at once. So you can have your remote backups upload to both Amazon and BackBlaze at the same time if you wanted to. You will need to re-enter your remote backup options for this new version.
  • The Amazon SDK had to be updated in order to resolve an issue that occurred due to XF2.2 upgrades. I don't know if Amazon S3 backups will still work on XF2.1 after this. Let me know...

Read the rest of this update entry...
 
Last edited:
I have 2 questions.

Say I want to offload a backup to a remote place.

1) Can I not take a backup on the local server but have a backup on the remote server?
So basically it creates a backup, sends it to remote server and deletes the one in the local server. Is this possible? Or do I have to keep always at least 1 backup on local?

2) Basically no matter what I do, I always have to keep double the storage space on the local server, right? Like say my stuff is 10 GB big + 10 GB backup. So I need 20GB server space. Is it possible to shave off some space somehow?
Anyone?

Also can Google Drive be added? It has 15 GB free space, should be enough for most people for their databases.
 
Last edited:
New issue - No settings changed.

When backing up the file structure, I think it's backing up other backups. My structure backup size as of last week was only 900/1000mb. Now it has changed to 10GB when backing up, and of course - all of the cloud backup destinations don't like that - so I'm stuck with a clunky backup solution.

Any ideas @Jaxel ?

1610122450871.webp
 
Does anyone know how to add more directories to exclude using this syntax/command?

--exclude='internal_data/backups'

Guessing it could be --exclude='internal_data/backups','folder1','folder2/foldera' ?

I want to try, but worried I'll b0rk something. Thanks
 
Nothing related to the actual backup process was changed in this update. Only uploading to external services.
 
Nothing related to the actual backup process was changed in this update. Only uploading to external services.
Okay. Thanks.
Does anyone know how to add more directories to exclude using this syntax/command?

--exclude='internal_data/backups'

Guessing it could be --exclude='internal_data/backups','folder1','folder2/foldera' ?

I want to try, but worried I'll b0rk something. Thanks
Any idea on this then? Would appreciate it if you could help. Thank you.
 
PHP:
Server error log

    Kunnu\Dropbox\Exceptions\DropboxClientException: {"error_summary": "missing_scope/..", "error": {".tag": "missing_scope", "required_scope": "files.content.write"}} src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Http/Clients/DropboxGuzzleHttpClient.php:59

    Generated by: Unknown account 3 February 2021 at 03:20

Stack trace

#0 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/DropboxClient.php(161): Kunnu\Dropbox\Http\Clients\DropboxGuzzleHttpClient->send('https://content...', 'POST', '{"runtime":1612...', Array, Array)
#1 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(269): Kunnu\Dropbox\DropboxClient->sendRequest(Object(Kunnu\Dropbox\DropboxRequest), NULL)
#2 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(936): Kunnu\Dropbox\Dropbox->sendRequest('POST', '/files/upload', 'content', Array, 'n21QRkEznSgAAAA...', NULL)
#3 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(1057): Kunnu\Dropbox\Dropbox->postToContent('/files/upload', Array)
#4 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(784): Kunnu\Dropbox\Dropbox->simpleUpload(Object(Kunnu\Dropbox\DropboxFile), '/2021-02-03/_me...', Array)
#5 src/addons/EWR/Backup/Repository/DropboxDP.php(41): Kunnu\Dropbox\Dropbox->upload(Object(Kunnu\Dropbox\DropboxFile), '/2021-02-03/_me...')
#6 src/addons/EWR/Backup/Repository/Backup.php(102): EWR\Backup\Repository\DropboxDP->runBackupDP('/home/nginx/dom...', '2021-02-03')
#7 src/addons/EWR/Backup/Cron/Backup.php(11): EWR\Backup\Repository\Backup->runBackup()
#8 [internal function]: EWR\Backup\Cron\Backup::runBackup(Object(XF\Entity\CronEntry))
#9 src/XF/Job/Cron.php(34): call_user_func(Array, Object(XF\Entity\CronEntry))
#10 src/XF/Job/Manager.php(253): XF\Job\Cron->run(G)
#11 src/XF/Job/Manager.php(195): XF\Job\Manager->runJobInternal(Array, G)
#12 src/XF/Job/Manager.php(79): XF\Job\Manager->runJobEntry(Array, G)
#13 job.php(42): XF\Job\Manager->runQueue(false, 8)
#14 {main}

-------------

Previous GuzzleHttp\Exception\ClientException: Client error: `POST https://content.dropboxapi.com/2/files/upload` resulted in a `401 Unauthorized` response:
{"error_summary": "missing_scope/..", "error": {".tag": "missing_scope", "required_scope": "files.content.write"}}
 - src/addons/EWR/Backup/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113
#0 src/addons/EWR/Backup/vendor/guzzlehttp/guzzle/src/Middleware.php(66): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response))
#1 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(203): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Response))
#2 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\Psr7\Response), Array)
#3 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/TaskQueue.php(47): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}()
#4 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(246): GuzzleHttp\Promise\TaskQueue->run(true)
#5 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(223): GuzzleHttp\Promise\Promise->invokeWaitFn()
#6 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(267): GuzzleHttp\Promise\Promise->waitIfPending()
#7 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(225): GuzzleHttp\Promise\Promise->invokeWaitList()
#8 src/addons/EWR/Backup/vendor/guzzlehttp/promises/src/Promise.php(62): GuzzleHttp\Promise\Promise->waitIfPending()
#9 src/addons/EWR/Backup/vendor/guzzlehttp/guzzle/src/Client.php(106): GuzzleHttp\Promise\Promise->wait()
#10 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Http/Clients/DropboxGuzzleHttpClient.php(57): GuzzleHttp\Client->send(Object(GuzzleHttp\Psr7\Request), Array)
#11 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/DropboxClient.php(161): Kunnu\Dropbox\Http\Clients\DropboxGuzzleHttpClient->send('https://content...', 'POST', '{"runtime":1612...', Array, Array)
#12 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(269): Kunnu\Dropbox\DropboxClient->sendRequest(Object(Kunnu\Dropbox\DropboxRequest), NULL)
#13 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(936): Kunnu\Dropbox\Dropbox->sendRequest('POST', '/files/upload', 'content', Array, 'n21QRkEznSgAAAA...', NULL)
#14 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(1057): Kunnu\Dropbox\Dropbox->postToContent('/files/upload', Array)
#15 src/addons/EWR/Backup/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Dropbox.php(784): Kunnu\Dropbox\Dropbox->simpleUpload(Object(Kunnu\Dropbox\DropboxFile), '/2021-02-03/_me...', Array)
#16 src/addons/EWR/Backup/Repository/DropboxDP.php(41): Kunnu\Dropbox\Dropbox->upload(Object(Kunnu\Dropbox\DropboxFile), '/2021-02-03/_me...')
#17 src/addons/EWR/Backup/Repository/Backup.php(102): EWR\Backup\Repository\DropboxDP->runBackupDP('/home/nginx/dom...', '2021-02-03')
#18 src/addons/EWR/Backup/Cron/Backup.php(11): EWR\Backup\Repository\Backup->runBackup()
#19 [internal function]: EWR\Backup\Cron\Backup::runBackup(Object(XF\Entity\CronEntry))
#20 src/XF/Job/Cron.php(34): call_user_func(Array, Object(XF\Entity\CronEntry))
#21 src/XF/Job/Manager.php(253): XF\Job\Cron->run(G)
#22 src/XF/Job/Manager.php(195): XF\Job\Manager->runJobInternal(Array, G)
#23 src/XF/Job/Manager.php(79): XF\Job\Manager->runJobEntry(Array, G)
#24 job.php(42): XF\Job\Manager->runQueue(false, 8)
#25 {main}

Request state

array(4) {
  ["url"] => string(8) "/job.php"
  ["referrer"] => string(23) "https://xxx.com/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}

1612320500388.webp
 
I have the following problem:

The creation of mysql backup works perfectly fine, even the creation of the file backup works (a complete 13 gb file is created) but it fails to reopen the board.

The logs show this:

{"runtime":1612408833,"inactive":"1","directory":"\/home\/backup\/2021-02-04","mysql":{"database":"live","enable":"1","output":"single","shrink":"gzip","split":"0","options":"--single-transaction --verbose --default-character-set=utf8mb4"},"files":{"enable":"1","shrink":"gzip","split":"0","options":"--exclude='internal_data\/backups'"},"events":[[0,"EWRbackup_event_starting"],[0,"EWRbackup_event_closing_forum"],[0,"EWRbackup_event_starting_mysql"],[20,"EWRbackup_event_finishing_mysql"],[20,"EWRbackup_event_starting_files"]]}

Even hours after the file backup was completed the board is still closed.

@Jaxel: Could you please take a look? Thanks!
 
Top Bottom