Skip to main content

Generic ZODB storage conversion tool

Project description

zodb-convert

Generic ZODB storage conversion tool. Copies data between any two ZODB-compatible storages.

Derived from RelStorage's zodbconvert by the Zope Foundation and Contributors, extracted as a standalone generic tool.

Installation

pip install zodb-convert

To convert between specific storage types, install their packages too:

pip install zodb-convert ZODB RelStorage  # FileStorage ↔ RelStorage
pip install zodb-convert ZODB zodb-pgjsonb  # FileStorage ↔ PGJsonb

Usage

Traditional config file

Create a config file (convert.conf):

<filestorage source>
    path /data/Data.fs
    blob-dir /data/blobs
</filestorage>

<filestorage destination>
    path /backup/Data.fs
    blob-dir /backup/blobs
</filestorage>

For storages that need blob wrapping:

<blobstorage source>
    blob-dir /data/blobs
    <filestorage>
        path /data/Data.fs
    </filestorage>
</blobstorage>

<filestorage destination>
    path /backup/Data.fs
    blob-dir /backup/blobs
</filestorage>

For third-party storages, use %import:

%import relstorage

<relstorage source>
    <postgresql>
        dsn dbname=zodb user=zodb
    </postgresql>
</relstorage>

<filestorage destination>
    path /backup/Data.fs
</filestorage>

Run:

zodb-convert convert.conf

Using existing zope.conf files

Extract storage configuration directly from Zope config files:

zodb-convert --source-zope-conf /old/etc/zope.conf --dest-zope-conf /new/etc/zope.conf

Specify which database to use (defaults to "main"):

zodb-convert --source-zope-conf zope.conf --source-db main \
             --dest-zope-conf other.conf --dest-db catalog

Mixed mode

Combine traditional config with zope.conf extraction:

zodb-convert convert.conf --source-zope-conf /old/etc/zope.conf

Where convert.conf contains only the destination storage section.

Options

  • --dry-run — show what would be copied without making changes
  • --incremental — resume from the last transaction in the destination
  • -v / --verbose — increase verbosity (-v for INFO, -vv for DEBUG)

License

ZPL-2.1 — see LICENSE.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zodb_convert-1.0.0b1.tar.gz (44.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zodb_convert-1.0.0b1-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file zodb_convert-1.0.0b1.tar.gz.

File metadata

  • Download URL: zodb_convert-1.0.0b1.tar.gz
  • Upload date:
  • Size: 44.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zodb_convert-1.0.0b1.tar.gz
Algorithm Hash digest
SHA256 51a4ec921f58484fa13d24dc4b8279878e6d18096183c8158e213f0e2019ac94
MD5 8797c82a0a4e1f248d257f2490a16332
BLAKE2b-256 bfc8731d7bc759f598afc4379543e69e01520b1df5006b8aeb4409db63e6de6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for zodb_convert-1.0.0b1.tar.gz:

Publisher: release.yaml on bluedynamics/zodb-convert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zodb_convert-1.0.0b1-py3-none-any.whl.

File metadata

  • Download URL: zodb_convert-1.0.0b1-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for zodb_convert-1.0.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 f9a90d43819ec5dcb1749d6ba32feedcfa5366db3062601fcfb3fde9988cc217
MD5 3441a886650ae659b9429a374f367a24
BLAKE2b-256 4ae503018ac4a6086c563042f8a32c60c99ee4804e7c10e7e4080336bca0bffd

See more details on using hashes here.

Provenance

The following attestation bundles were made for zodb_convert-1.0.0b1-py3-none-any.whl:

Publisher: release.yaml on bluedynamics/zodb-convert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page