在Python/SQLAlchemy中使用SQLite的备份API
我正在用Python操作一个SQLite数据库,使用的是SQLAlchemy这个库。为了提高性能,我想在应用程序中使用一个内存数据库,然后把这个数据库备份到硬盘上。
SQLite有一个备份API,看起来可以很方便地实现这个功能。
根据APSW的文档,它提到可以封装这个备份API,但我想通过Python的标准sqlite3模块,或者最好是通过SQLAlchemy来使用这个功能。这可能吗?
5 个回答
3
如果 pysqlite 和 apsw 是链接到同一个 sqlite 库的,那么 pysqlite 就可以接受 apsw 的连接。具体可以参考这里:
http://docs.pysqlite.googlecode.com/hg/sqlite3.html#combining-apsw-and-pysqlite
我会尝试研究这个方法(以及其他方法)来让 apsw 和 SQLAlchemy 一起工作,因为它们的组合非常有用。
3
APSW方言可以很简单地添加到SQLAlchemy中。在0.6版本中,这个过程非常简单,因为它允许多种类型的DBAPI适配器使用相同的方言来连接所使用的数据库。
1
python-sqlite3-backup 这个模块声称可以解决这个问题。