从odoo中备份Odoo db

时间:2015-01-14 04:11:54

标签: python openerp odoo

我需要在登录odoo时备份当前的数据库。我应该可以使用一个按钮来执行此操作,因此假设我单击按钮,它的工作方式与管理数据库中的odoo默认备份相同,但我应该能够在登录时从内部执行此操作。

有没有办法实现这个目标?我知道这可以从使用bash的外部odoo中获得,但这不是我想要的。

9 个答案:

答案 0 :(得分:5)

通过使用此模块,您可以定期备份数据库

https://www.odoo.com/apps/modules/7.0/crontab_config/(v7)

你也可以测试这个模块

https://www.odoo.com/apps/modules/6.1/db_backup_ept/(v6可以迁移到v7)

在您的情况下,您可以添加按钮来执行将由计划执行的功能。

答案 1 :(得分:1)

您可以使用私人浏览器会话从登录屏幕访问数据库菜单,并在那里执行备份表单(您需要知道访问该密码的主密码,在服务器配置文件中定义)。

答案 2 :(得分:1)

转到 your_odoo_instance / web / database / manager ,您可以在其中查看所有已安装的数据库:

Odoo's Database Manager - Backup

此任务需要您定义的主密码。如果您忘记了它,请查看服务器中的odoo.conf文件并查看“admin_passwd”条目。

答案 3 :(得分:1)

您可以在odoo中从“数据库管理”中获取数据库备份。

在浏览器中输入以下链接

http://localhost:8069/web/database/manager

只需在上面的链接中替换你的ip和port,你就会得到数据库管理的屏幕,你可以执行以下与数据库相关的操作

  • 创建
  • 复制
  • 掉落
  • 备份
  • 密码
  • 恢复

答案 4 :(得分:0)

在某处添加一个按钮并调用这样的控制器。

@http.route('/backup/download', auth="user", type='http')
        def backup(self, **kw):
            ts = datetime.datetime.utcnow().strftime("%Y-%m-%d_%H-%M-%S")
            filename = "%s_%s.zip" % (request.env.cr.dbname, ts)
            headers = [
                ('Content-Type', 'application/octet-stream; charset=binary'),
                ('Content-Disposition', content_disposition(filename)),
            ]
            dump_stream = db.dump_db(request.env.cr.dbname, None)
            response = werkzeug.wrappers.Response(dump_stream, headers=headers, direct_passthrough=True)
            return response

答案 5 :(得分:0)

您可以使用CURL下载完整备份(资产+数据库),此方法比pg_dump相对要快。

curl -X POST \
-F "master_pwd=${ADMIN_PASSWORD}" \
-F "name=${ODOO_DATABASE}" \
-F "backup_format=zip" \
-o ${BACKUP_DIR}/${ODOO_DATABASE}.$(date +%F-%T).zip \
${HOST}/web/database/backup

如果愿意,您可以包装自定义(您自己的)Odoo附加组件。希望这会有所帮助。

答案 6 :(得分:0)

有很多方法可以转储ODOO数据库。您也可以从ODOO商店下载应用程序以自动执行此操作。在这里,我可以建议一个插件,它将根据您设置的月,日,小时为基础执行此数据库自动备份。这是一种高度可靠且高效的方式,该模块可以处理大型数据库而不会影响odoo进程。 ODOO DATABASE AUTOMATIC BACKUP

答案 7 :(得分:0)

使用此模块进行自动备份

活跃的开发者模式。 转到设置 > 常规设置 > 数据库备份 设置数据库名称和保存数据库的路径。

https://apps.odoo.com/apps/modules/11.0/db_backup/

https://apps.odoo.com/apps/modules/14.0/yodoo_easy_backup/

答案 8 :(得分:-3)

要进行备份,您可以转到此链接http://localhost:8069/web/database/manager

  • 您可以从那里创建备份。
  • 您也可以恢复预先存在的备份。

Important - 在此之前,只需为您的数据库设置主密码,以避免将来产生后果。

enter image description here 如果您想在登录时更改特定模型或字段。您可以通过Odoo提供的export/import操作来执行此操作。从本地导出数据后,您可以将其导入服务器,以便进行验证。 enter image description here