如何实现 Odoo 数据每天备份到Amazon S3存储 - Oejia 技术栈,企业方案分享、Odoo顾问
Oejia 技术栈
主页
分享
微信模块
索引
关于
订阅
编辑器
登录
如何实现 Odoo 数据每天备份到Amazon S3存储
admin
on 2021-01-29 11:50:57
继承任意已有模型(例如:abc)增加如下方法 ``` @api.model def backup_to_s3(self): import os from datetime import datetime import tempfile import boto from boto.s3.key import Key from odoo.service import db os.environ['S3_USE_SIGV4'] = 'True' def _transport_backup_simple(conn, bucket_name, data, filename): _logger.info('Backing up via S3 simple agent') bucket = conn.get_bucket(bucket_name) k = Key(bucket) k.key = filename k.set_contents_from_string(data) _logger.info('Data successfully backed up to s3') bucket_name = 'A-xxxxxxx' aws_access_key_id = 'B-xxxxxxxxxxxxxxxx' aws_secret_access_key = 'C-xxxxxxxxxxxxxxxxxxxxxx' conn = boto.connect_s3(aws_access_key_id, aws_secret_access_key, host='s3.D-xxxx.amazonaws.com') db_name = self.env.cr.dbname with tempfile.TemporaryFile() as t: db.dump_db(db_name, t) t.seek(0) db_dump = t.read() filename = "%(db_name)s_%(timestamp)s.zip" % { 'db_name': db_name, 'timestamp': datetime.utcnow().strftime("%Y-%m-%d_%H-%M-%SZ") } _transport_backup_simple(conn, bucket_name, db_dump, filename) ``` 其中 A-xxxxxxx、B-xxxxxxxxxxxxxxxx、C-xxxxxxxxxxxxxxxxxxxxxx为S3连接信息;D-xxxx 为 S3 所在可用区名 添加Odoo Cron定时任务,设置每天凌晨n点执行,任务执行Python代码如下: ``` env['abc'].backup_to_s3() ```
Information
如何实现 Odoo 数据每天备份到Amazon S3存储
http://www.oejia.net/blog/2021/01/29/odoo_db_backup_to_s3.html
http://www.oejia.net/raw/2021/01/29/odoo_db_backup_to_s3.md
admin
on 2021-01-29 11:50:57
Category
Odoo
Tag
Related
2022-10-06 :
Odoo 16 正式发布时间
2022-05-12 :
Error: Invalid Prop 'apps' in component 'HomeMenu'
2022-04-26 :
Odoo商城模块 Oejia_weshop v1.0.1 发布,统一强大的后台多种客户端支持
2020-09-30 :
微信模块 Oejia_wx v0.6.3 发布,多项兼容优化,即将全面适配 Odoo14
2020-09-18 :
OE商城积分模块
2020-03-26 :
OE商城拼团、砍价模块
2019-03-25 :
Odoo 基于企业微信实现的自建应用审批流功能的配置及使用说明
2016-12-16 :
Odoo 的静态资源优化方案
2016-03-22 :
MarkDown 书写工具 YouMd v1.3 发布 简单多用户支持
2016-01-17 :
新版开启2016年新篇章
January 2023
Sun
Mon
Tue
Wed
Thu
Fri
Sat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
分类
Odoo (121)
DjangoX (13)
后端HTTP (7)
YouMd (4)
移动开发 (4)
Django (3)
前端 (2)
JS (2)
公告说明 (2)
Python (1)
Nginx (1)
桌面UI (1)
异常处理 (1)
官方公众号
关注公众号实时咨询我们
About This Entry
Odoo 如何用命令行备份还原数据
Linux 软件源推荐
About This Blog
main index
to find recently
archives
to find all
标签
微信模块发布记录
微信模块
小程序商城
Python
Web
Http
客服系统
OE商城
Cordova
审批OA
HTML5
Markdown
解析
DjangoX
ExtJS
示例
Excel
JS
新年
PyQT
扩展开发
YouPBX
服系统
最近发布
SyntaxError: Failed to execute 'querySelectorAll' on 'Element': 'footer:not(field footer)' is not a valid selector
企业微信错误码:60020 的处理
在 Odoo 中使用 WebSocket 并兼容Odoo的Session会话识别
Odoo 让 server action 显示到指定的视图上
Odoo 增加树形列表视图的支持
Odoo 16 正式发布时间
Odoo 企业微信之日历、日程的同步
钉钉消息通知及审批功能的使用说明
Odoo 客户管理之微信定位模块
AccessError: (u'Database fetch misses ids ((1,))) and has extra ids (1), may be caused by a type incoherence in a previous request'
Friend Links
Oejia技术梦博客分享
YouMd,爱上MarkDown
Mole轻量级wsgi架子