Python 遗留伯克利数据库
Posted
技术标签:
【中文标题】Python 遗留伯克利数据库【英文标题】:Python Legacy Berkeley Database 【发布时间】:2012-12-24 12:49:35 【问题描述】:我正在使用一个用 Python 编写的程序,该程序最后一次更新是在 2003 年。我现在一切正常,除了一个导入:
from BDBStorage.BerkeleyBase import BerkeleyConfig
这看起来像是一个非常旧版本的 berkeley 数据库模块,将在 Python 3 中弃用。我能找到的唯一参考是:http://buildbot.zope.org/Packages/BDBStorage/BerkeleyBase.py?graph=1.8&only_with_tag=bsddb3Storage_1_0beta4。
不幸的是,该软件没有文档,并且无法联系到构建它的团队。
有没有人见过类似的东西?
用法如下:
berkeley_config = BerkeleyConfig()
berkeley_config.logdir = os.path.join(base_dir, "bdb_log")
berkeley_config.frequency = 3600
db_retriever = BerkeleyDatabaseRetriever(
database_dir = os.path.join(base_dir, "dating_db"),
config = berkeley_config)
【问题讨论】:
它看起来有点像BDB storage backend for Zope,它是已弃用的bsddb Python 模块(现在维护externally to Python here)的包装器 诅咒!这对我来说似乎太费力了。我可能会使用不同的软件。 【参考方案1】:A checkout of 794bb3cfcd04dcd309c28ae214a59003be49d0a5
in the Zope repo 包含您正在寻找的 BDBStorage 模块,
$ python -c 'from BDBStorage.BerkeleyBase import BerkeleyConfig'
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "BDBStorage/BerkeleyBase.py", line 31, in <module>
from ZODB.lock_file import LockFile
ImportError: No module named ZODB.lock_file
它需要单独安装ZODB moudle。 ZODB 模块仍在积极开发中,但我怀疑旧的 BDBStorage 模块可能需要 2003 年左右的旧版本(据我所知,上次修改 BDBStorage 模块时)
看起来开始工作不会很有趣..
【讨论】:
以上是关于Python 遗留伯克利数据库的主要内容,如果未能解决你的问题,请参考以下文章