Automatic Database Backup To Local Server, Remote Server,Google Drive, Dropbox, Onedrive, Nextcloud and Amazon S3 Odoo17
by Cybrosys Techno Solutions https://www.cybrosys.comAvailability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 1503 |
Technical Name |
auto_database_backup |
License | LGPL-3 |
Website | https://www.cybrosys.com |
Versions | 12.0 14.0 13.0 15.0 16.0 17.0 |
Automatic Database Backup
This Module Helps To Generate Automated Backup Of Databases.
Generate automatic backup of databases and store to local, google drive, dropbox, nextcloud, amazon S3, onedrive or remote server, Odoo17
KEY HIGHLIGHTS
Automated Backup
Generate Database Backups on regular intervals.
Remove Redundancy
Automatically remove old backups that consumes storage space.
Notification
Notify user on success and failure of backup generation.
Flexibility of Backup
Store to Remote Servers, Nextcloud, Amazon S3, Google Drive, Dropbox, Onedrive.
Overview
Automatic Database Backup.
This module helps generate backups of your databases automatically at regular intervals. The generated backups can be stored in local storage, on an FTP server, SFTP server, Dropbox, Nextcloud, Google Drive, OneDrive, and Amazon S3. Additionally, there are features for automatically deleting old backups and enabling email notifications.
This module uses an external python dependency 'dropbox'. Before installing the module install the python package first. The required python package can be installed using the following command,
pip install dropbox
This module uses an external python dependency 'nextcloud'. Before installing the module install the python package first. The required python package can be installed using the following command,
pip install pyncclient
This module uses an external python dependency 'nextcloud-api-wrapper'. Before installing the module install the python package first. The required python package can be installed using the following command,
pip install
nextcloud-api-wrapper
This module uses an external python dependency 'Boto3'. Before installing the module install the python package first. The required python package can be installed using the following command,
pip install boto3
This module uses an external python dependency 'paramiko'. Before installing the module install the python package first. The required python package can be installed using the following command,
pip install paramiko
Screenshots
Automatic Database Backup.
Database Backup Configuration Menu.
Go to Setting --> Technical --> Backup Configuration to configure backups.
Create New Database Backup Configuration.
Enter the Database Name and Master Password. Specify Backup Destination. Enter the backup directory path, if directory does not exist new directory will be created.
Store Backup to Remote SFTP Server.
Select Backup Destination as SFTP, enter credentials. "TEST CONNECTION" button to check whether the connection is successful.
Store Backup to Remote FTP Server.
Select Backup Destination as FTP, enter credentials. "TEST CONNECTION" button to check whether the connection is successful.
Store Backup to Google Drive.
You'll need to create a new Google API project and enabling the Google Drive API, Go to the Google API Console and log into your account. While creating the project, for the Redirect URI restrictions, copy your Odoo database URI followed by /google_drive/authentication. Example:
ENABLE API AND SERVICES
ENALBE GOOGLE DRIVE API
Create Credentials, Follow the steps, select Website application for the Application Type.
Under the Authorized JavaScript Origins section, click + Add URI and type your company's Odoo URL address. Under the Authorized redirect URIs section, click + Add URI and type your company's Odoo URL address followed by /google_drive/authentication. After all the steps are completed, A Client ID and Client secret will be given, copy the credentials
Go to the "OAuth consent screen", then Test users and click on 'ADD USERS' then add the user.
Configure Backup, Copy Client ID and Client Secret from Google Drive API Credentials page into their respective fields.
Setup Token, it will be redirected to an authorization page.
Grant Access
Reset the token if required by clicking on the "Reset Token"
Store Backup to Dropbox.
To get the app key and secret key go to the App Console. Create a new app
Once you created the App , you can get the App key and App Secret as seen in the screenshot.
Choose your app's permission (files.content.write and files.content.read permissions required).then click on Submit
Choose Dropbox as that of the backup destination. Enter the app secret and key and dropbox Folder.
Click on the Setup Token
Get the Authorization Code and click confirm.
Reset the refresh token if required by clicking on the "Reset Token"
Store Backup to Onedrive.
Select Backup Destination as OneDrive. Enter the App key and App secret. you'll need to register a new app in the Microsoft Azure portal. While registering the app for the Redirect URI restrictions, copy your Odoo database URI followed by /onedrive/authentication. Example:
Copy the Client ID
Generate Client Secret.
Get OneDrive folder ID, where need to store the backup files.
Configure the Backup.
Setup Token, it will be redirected to an authorization page.
Grant Access
Reset the token if required by clicking on the "Reset Token"
Store Backup to Nextcloud.
To Create an account in Nextcloud go to https://nextcloud.com/sign-up/, Enter Your Email Address and Sign up .
You will be redirected to the page as shown in the screenshot, and it will ask you enter your email and password for the Nextcloud.
To get the Domain of the Nextcloud.Go to Settings in the Nextcloud and Click on Mobile & desktop. You will see server address Copy link and paste it in your Domain Name.
Select the backup destination as Nextcloud. Enter the Domain Name, UserName, Password and Folder Name where you want to store your backup on the NextCloud server. Check the Connect button to check if the connection is successful.
Every day, a Scheduled Action will take place to store a backup on the Nextcloud Server. The backup will be stored as the folder name provided in the Folder ID field in Odoo.
Store Backup to Amazon S3.
To Create an account in Amazon S3 go to https://portal.aws.amazon.com/billing/signup#/start/email, Enter Your Email Address and Sign up .
After you created the account.You need to get the Access Key and Secret Key,To get these go the account Security credentails and go the Access Keys and create new access keys from there you will get Access Key and Secret Key.
Next You need to create a Bucket Folder in the Amazon S3.To do that Go the Services in the top right and go to Storage and S3 as shown in the Screen shot.
To create Bucket folder,Click on the Create bucket Button.
On Creating a Bucket Folder,Check the rules for naming the Bucket folder,and Select the region as well.After that click on the create Bucket Button in the bottom of the page.
You will see the Bucket Folder as shown in the screenshot.
Select Backup Destination as Amazon S3. Enter the Amazon S3 Access Key,Amazon S3 Secret Key,Bucket Name->Bucket folder you have created in the Amazon S3 and the File Name->The Folder You want to store your backup in Amazon S3 Bucket Folder.Test connection button to check whether the connection is successful.
Every day, a Scheduled Action will take place to store a backup on the Amazon S3 Server. The backup will be stored as the folder name provided in the File Name field in Odoo.
Automatically Remove Old Backups.
Enable auto remove option, specify number of days to remove backups.
Notify User on Success and Failure of Backup Generation.
Enable notify user option, and select a user to notify. An email notification will be sent to the selected user on backup successful and failure.
Successful backup notification email.
Notification email when backup generation failed.
Scheduled Action For Generating Backup.
Enable the 'Automatic database Backup' scheduled action, and set up the execution interval. Based on the scheduled action setup, backups will be generated on regular intervals.
FEATURES
Comprehensive Features of AUTOMATIC DATABASE BACKUP
Interactive User Interface.
Store Backup To Different Locations.
Automatically Remove Old Backups.
Generate Database Backups on regular intervals.
Notify User On Success And Failure Of Backup Generation.
Stores To Remote Servers, Nextcloud, Amazon S3, Google Drive, Dropbox, Onedrive.
FAQ
After each backup attempt, you will receive a notification indicating whether it was successful or if it encountered a failure.
On the Backup Configuration, we have the option to select a backup format whether zip or dump. Choosing zip will provide filestore while dump will not.
Enable auto-remove option from backup configuration to automatically delete old backups.
Certainly! You can back up directly to your local system by selecting the destination as local storage and specifying the desired path for the backup.
RELEASE NOTES
Version 17.0.3 I Updated on : 18th April 2024
Fixed all the issues while inputting list_db = False.
Version 17.0.2 I Updated on : 31st November 2023
Updated the database name check function which got access denied when list_db=False.
Version 17.0.1 I Released on : 6th October 2023
Initial commit for auto_database_backup
Related Modules
Explore our related modules
Our Services
Odoo Customization
Odoo Implementation
Odoo Support
Hire Odoo Developer
Odoo Integration
Odoo Migration
Odoo Consultancy
Odoo Implementation
Odoo Licensing Consultancy
Our Industries
Trading
Easily procure and sell your products
POS
Easy configuration and convivial experience
Education
A platform for educational management
Manufacturing
Plan, track and schedule your operations
E-commerce & Website
Mobile friendly, awe-inspiring product pages
Service Management
Keep track of services and invoice
Restaurant
Run your bar or restaurant methodically
Hotel Management
An all-inclusive hotel management application
Support
Need help? Get in touch.
Say hi to us on WhatsApp!
+91 86068 27707
Skype
Say hi to us on Skype!
cybroopenerp
Please log in to comment on this module
Report comment
Any abuse of this reporting system will be penalizedCan't create zip on google drive
I have installed in v17 instance and configured to work with Google Drive. With dump DB it works fine (although it does not send any email) but if I change to the Zip format it simply does not generate anything...
Hi,
I tried to install the package but got the following error message "Python library not installed: dropbox ". I installed odoo on dockerhub using docker compose. How can I fix it?
Thanks in advance
Re:
Hi, Please use the below command to install Dropbox in your Odoo docker container.
Replace 'container' with your odoo container name.
Access Denied
This module was working fine on odoo 16. but the 17 version throws an "access denied" error while saving.
Re: Access Denied
The access denied is occurring due to the inability to list databases due to having list_db=False on your Odoo conf file. Please check your odoo service configuration
Cant backup with google drive and dropbox
I was config google drive and dropbox and it was set "Refresh token set" sussess but it not working, i try "Run manualy" in Scheduled Actions but it notification "Please check connection"
Re: Cant backup with google drive and dropbox
Please try installing the latest module and let us know if the issue persists.
Error google drive
Google Drive Exception: 'files'
Access denied when database listing disabled - Solved
Hi,
I've tested the new version, and indeed the problem with the list_db setting is solved.
Thank you.
Access denied when database listing disabled
This module isn't working when database listing is disabled in odoo config.
Since this is a security measure,as it disables database management features on the front-end , it isn't an option to enable database listing.
This makes this module unusable.
Re: Access denied when database listing disabled
Hello, We have resolved the database listing issue. The latest version is now available for download and update.
odoo.addons.auto_database_backup.models.db_backup_configure: FTP Exception: Command '['/usr/bin/pg_dump', '--no-owner', '--file=/tmp/tmpnsavhcaz/dump.sql', '20240216']' returned non-zero exit status 1.
psql version is 11.11, ensure chown -R to folder accessable, and database password correct
is there any causes or setting inproper?
Re:
The error you're encountering may be due to a configuration issue with FTP. Please ensure that you're configuring FTP correctly. For your reference, you can check out the following blog which provides a guide on setting up an FTP server on Ubuntu 20.04: https://www.cybrosys.com/blog/how-to-setup-ftp-server-on-ubuntu-20-04
hi
"Hi,
I installed the module, and at first, it was working correctly. However, the scheduled backup action is no longer working, and I have to do the backup manually."
Re: hi
Please share your odoo log with us. You can email to odoo@cybrosys.com
I am trying to create a local database backup but I am getting an "access denied" error. What is the best place to store the backups and what permissions should the folder directory have?
Re:
You can choose a directory where the Odoo system user has the Create access, to store the database backup.
Another cause of the 'Access denied, error can be the wrong credentials, please make sure the Master Password provided is also correct.
Hi
backup file size is zero
Hello, After 1 week working perfectly, I got this error running the backup task schedule
An error occurred while generating the token. Your authorization code may be invalid or has already expired [invalid_grant]. You should check your Client ID and secret on the Google APIs plateform or try to stop and restart your calendar synchronisation.
Re:
This error message is generated while creating a refresh token if the token validity expires. This may occur due to a mismatch with the server time or the expiry of the token itself. Try reauthenticating the Google API credentials. To better assist you and expedite a resolution, please contact us at odoo@cybrosys.com
Security flow by enabling list_db...
Thanks for the reply. but keeping list_db enabled is not a healthy move. any alternative ways?
Re: Security flow by enabling list_db...
It will need some modifications on the app. It will be better if you can drop an email to odoo@cybrosys.com. Then our team will do the needful.
Does this module only backup database? What about the file store?
Re:
On the Backup Configuration, we have the option to select a backup format whether zip or dump. Choosing zip will provide filestore while dump will not.