Skip to main content

A tool to upgrade DuckDB database files.

Project description

duckdb-upgrade

Tests

A tool to easily upgrade duckdb databases from one version to another. It automates the process of exporting the contents of a DuckDB database and then importing them into a newer version of a DuckDB database.

[!IMPORTANT] This process isn't guaranteed to be compatible with every combination of DuckDB. The tool is limited to forward upgrades only, but things may still break during that upgrade. By default this tool keeps a backup of the old version of the database, but it is still important to be mindful of any process that may cause data corruption. Any data loss or corruption is on you, so exercise reasonable precautions before use.

Usage

This tool is available both through pip and Docker. Use one of the following commands to run it, or your preferred method to run Python packages or Docker images. These examples cover upgrading some DuckDB in the current directory to the latest version of the database.

via Pipx

$ pipx run duckdb-upgrade example.duckdb

via Docker

$ docker run -v $(pwd):/data ghcr.io/mrflynn/duckdb-upgrade:latest /data/example.duckdb

Advanced Usage

You can also specify the target version you with to upgrade to using the -t flag. For example, if you wish to upgrade some database to version 0.10.0, run the command as follows:

$ duckdb-upgrade -t '0.10.0' example.duckdb

[!CAUTION] You can also run the tool with the --no-backup flag which won't create a backup of the original database before upgrading it. This is potentially dangerous, so please use with caution. Again, any data loss resulting from this is on you.

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

duckdb_upgrade-0.7.0.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

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

duckdb_upgrade-0.7.0-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file duckdb_upgrade-0.7.0.tar.gz.

File metadata

  • Download URL: duckdb_upgrade-0.7.0.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for duckdb_upgrade-0.7.0.tar.gz
Algorithm Hash digest
SHA256 8a62c5bdd24b9d7746c4a72784ff759c56ac6eabdd7589b0bb050c0f791a7695
MD5 dd05eae4db3564d00490565302d8c946
BLAKE2b-256 746198dc3c838ed939f7727d628426de8f35c2b986a389e4125be750d302fb10

See more details on using hashes here.

Provenance

The following attestation bundles were made for duckdb_upgrade-0.7.0.tar.gz:

Publisher: release.yaml on MrFlynn/duckdb-upgrade

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

File details

Details for the file duckdb_upgrade-0.7.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for duckdb_upgrade-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d5a67f70616fd04c5166bb56b22a465a19fc48cd717fb6b1692c207957e85045
MD5 7bc9110990e7be7623ded07f75c1777f
BLAKE2b-256 1548e670fee9497f22a9c17916a7ae718b7b067a7bd0de58f2ce87dc3a5a1ec5

See more details on using hashes here.

Provenance

The following attestation bundles were made for duckdb_upgrade-0.7.0-py3-none-any.whl:

Publisher: release.yaml on MrFlynn/duckdb-upgrade

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