zodb:从备份中恢复丢失的对象

dm.zodb.repair的Python项目详细描述


此包包含一个从zodb备份还原丢失对象的函数。 在未来,它可能会为zodb修复提供更多的工具。

recover.restore_from_backup

模块recover定义函数restore_from_backup 从zodb备份还原丢失的对象。restore_from_backup 具有参数lostbackuptarget

lost是标识target中丢失对象的oid的一个表。 例如,这些oid可能是由标准的fsrefs实用程序找到的。

backuptarget是开放的zodb存储。backup是只读的 并且可以以只读方式打开;target是读写的。

restore_from_backup读取 backup丢失,并将它们写入target。如果这样恢复 对象包含对target中不可用的其他对象的引用, 它们是递归恢复的。 这些操作是通过python的标准日志子系统记录的。

示例用法:

from logging import basicConfig, getLogger, INFO
from ZODB.FileStorage.FileStorage import FileStorage
from dm.zodb.repair.recover import restore_from_backup

basicConfig()
logger = getLogger(); logger.setLevel(INFO)

lost = [....] # list of oids for lost objects, e.g. derived from "fsrefs" output

backup = FileStorage('backup.fs', read_only=True)
target = FileStorage('target.fs')
restore_from_backup(lost, backup, target)
backup.close()
target.close()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何克服带有空值的不可空bean级验证   “此行有多个标记”的authenticateUser上的java MySQLConnection错误   java处理Jackson异常   java Netbeans编辑器如何知道文件在撤消后不会被修改?   目标C相当于Java的ArrayList   java当需要int时,可以将short传递给方法调用吗?   drawString()方法上的java MouseListener   java服务器socket是执行此操作的最佳选项   java需要单个匹配bean,但找到了2:org。springframework。网状物servlet。mvc。方法注释。RequestMappingHandlerMapping   如何在Java中执行Windows命令?   安卓应用程序的java文件主机   java将所有spring引导属性都设置在内。将yml文件转换为系统属性   Java邮件中的html内联链接在邮件客户端中不起作用   Java二进制文件的bazel版本控制   java如何在自定义ListView中使用Intent   java(Spring MVC+Hibernate 4+Test 4)自动连线DAO返回NULL   java一次add()调用可以在Solr服务器中索引多少文档?   java如何获取Avro GenericRecord大小