Skip to main content

SQLAlchemy-based cross-database migration tool

Project description

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.

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

sqlacrossover-0.3.1.tar.gz (8.2 kB view details)

Uploaded Source

Built Distributions

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

sqlacrossover-0.3.1-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

sqlacrossover-0.3.1-py2-none-any.whl (8.6 kB view details)

Uploaded Python 2

File details

Details for the file sqlacrossover-0.3.1.tar.gz.

File metadata

  • Download URL: sqlacrossover-0.3.1.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for sqlacrossover-0.3.1.tar.gz
Algorithm Hash digest
SHA256 501c96f64f53c3dbefbef4330fbb1f410ee447e0d49bef20634bd2c9fc6e99be
MD5 df12e11f151fdeb29ea83337494b9802
BLAKE2b-256 1e112e4ad47de6087c6cd897364d8196eadfcfb6dc45aa762eb177cdd15ed0ea

See more details on using hashes here.

File details

Details for the file sqlacrossover-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: sqlacrossover-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for sqlacrossover-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a17f74d7467fdd0fe599f34621ffb651041b6750b44c33bf5c8442962f79766c
MD5 f7b569fe5071e48b1b2029e2c65cb1d3
BLAKE2b-256 81088d26bc2297b565534fdd9f336f131248c3d8ddd95e674df39d0324141e26

See more details on using hashes here.

File details

Details for the file sqlacrossover-0.3.1-py2-none-any.whl.

File metadata

  • Download URL: sqlacrossover-0.3.1-py2-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for sqlacrossover-0.3.1-py2-none-any.whl
Algorithm Hash digest
SHA256 15262eabd1fce022d15eb18964759bae508238219e81329297c03383af3e33a3
MD5 30f8da88f89723e1e3b1a716b339a0e0
BLAKE2b-256 dbd081686fc05e4c9d845e1045eb12a5ad58cf3f699d45cb74f7ab37b9510749

See more details on using hashes here.

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