Odoo中文网|Odoo实施培训

 找回密码
 立即注册
搜索
热搜: Odoo OpenERP 实施
查看: 7346|回复: 1
打印 上一主题 下一主题

怎样自动备份数据库?

[复制链接]

2

主题

8

帖子

28

积分

新手上路

Rank: 1

积分
28
跳转到指定楼层
楼主
发表于 2015-11-8 15:07:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想设置每30分钟备份一次数据库,用Ptython代码定义服务器动作,怎么实现?
回复

使用道具 举报

11

主题

33

帖子

101

积分

注册会员

Rank: 2

积分
101
沙发
发表于 2015-11-8 15:18:54 | 只看该作者
可以创建一个crontab调用python脚本,
  1. import os
  2. import time
  3. import subprocess

  4. dump_dir = '/home/openerp/db_backup'
  5. db_username = 'openerp'
  6. #db_password = ''
  7. db_names = ['DB_NAME']

  8. for db_name in db_names:
  9.     try:
  10.         file_path = ''
  11.         dumper = " -U %s --password -Z 9 -f %s -F c %s  "
  12. #        os.putenv('PGPASSWORD', db_password)
  13.         bkp_file = '%s_%s.sql' % (db_name, time.strftime('%Y%m%d_%H_%M_%S'))
  14. #        glob_list = glob.glob(dump_dir + db_name + '*' + '.pgdump')
  15.         file_path = os.path.join(dump_dir, bkp_file)
  16.         command = 'pg_dump' + dumper % (db_username, file_path, db_name)
  17.         subprocess.call(command, shell=True)
  18.         subprocess.call('gzip ' + file_path, shell=True)
  19.     except:
  20.         print "Couldn't backup database" % (db_name)
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|技术支持|开发手册|Odoo中文网-远鼎旗下odoo培训网站 ( 苏ICP备15039516号 )

GMT+8, 2024-4-25 19:10 , Processed in 0.013780 second(s), 14 queries , Xcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表