Skip to main content

Cross-database migration tool based on SQLAlchemy

Features:

  • Copy data and schema between SQLAlchemy-supported databases

  • Table ordering - taking the foreign keys dependencies in consideration

  • Data processing in batches

  • Wrap the process in transaction to get consistent results

  • Dump schema and data to SQL file

Installation

pip install sqlacrossover[MySQL,PostgreSQL]

Example

sqlacrossover 'mysql+pymysql:///sourcedatabase?charset=utf8' postgresql:///targetdatabase

TODO

  • Write documentation

  • Implement options:

    • --no-data

    • --tables

    • --exclude-tables

    • --truncate-non-empty

    • --skip-non-empty

  • Implement efficient driver-depenedent insert methods

    • PostgreSQL COPY FROM / COPY TO

    • MySQL LOAD DATA LOCAL INFILE

  • Write tests, configure travis.ci

Contibuting

Pull requests implementing new features, adding tests, docs and fixing bugs are welcome.

Feel free to open an issue with any feedback or ideas, also.

Metadata

Release files for sqlacrossover 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sqlacrossover 0.3.2
File Size Uploaded
sqlacrossover-0.3.2.tar.gz 8.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sqlacrossover 0.3.2
File Interpreter ABI Platform
sqlacrossover-0.3.2-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 17.4 kB

Release files / sqlacrossover-0.3.2.tar.gz

Download URL sqlacrossover-0.3.2.tar.gz
Size 8.6 kB
Tags Source
SHA-256 checksum
How to use checksums
81ff7cbcab8c39715e3fb0b7a0b196539f5b45e758526897da6567d67e5e23ae
BLAKE2b-256 checksum
How to use checksums
139c7558fab095798796c922cd5ed5312da3dbb7d1d90ba59bcf1144b40b9352
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

Release files / sqlacrossover-0.3.2-py2.py3-none-any.whl

Download URL sqlacrossover-0.3.2-py2.py3-none-any.whl
Size 8.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
3edc04da58aa2ecc02299f92e4846a7d6c44b94c64dc541cbeb544c98a4b494d
BLAKE2b-256 checksum
How to use checksums
ac66f631705a0187be859fafe48ffeddfb2c883f128f7931563338ffeab7f74c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

Release history Release notifications | RSS feed

This release

0.3.2 This release

2 release files

0.3.1

3 release files

0.2.2

1 release file

0.2.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page