{ "info": { "author": "Andrew Grigorev", "author_email": "andrew@ei-grad.ru", "bugtrack_url": null, "classifiers": [], "description": "sqlacrossover\n=============\n\nCross-database migration tool based on SQLAlchemy\n\nFeatures:\n\n* Copy data and schema between SQLAlchemy-supported databases\n* Table ordering - taking the foreign keys dependencies in consideration\n* Data processing in batches\n* Wrap the process in transaction to get consistent results\n* Dump schema and data to SQL file\n\nInstallation\n------------\n\n.. code-block:: bash\n\n pip install sqlacrossover[MySQL,PostgreSQL]\n\nExample\n-------\n\n.. code-block:: bash\n\n sqlacrossover 'mysql+pymysql:///sourcedatabase?charset=utf8' postgresql:///targetdatabase\n\nTODO\n----\n\n* Write documentation\n\n* Implement options:\n\n * ``--no-data``\n * ``--tables``\n * ``--exclude-tables``\n * ``--truncate-non-empty``\n * ``--skip-non-empty``\n\n* Implement efficient driver-depenedent insert methods\n\n * PostgreSQL ``COPY FROM`` / ``COPY TO``\n * MySQL ``LOAD DATA LOCAL INFILE``\n\n* Write tests, configure travis.ci\n\nContibuting\n-----------\n\nPull requests implementing new features, adding tests, docs and fixing bugs are welcome.\n\nFeel free to open an issue with any feedback or ideas, also.\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.org/project/sqlacrossover/", "keywords": "sqlalchemy", "license": "Apache-2", "maintainer": "", "maintainer_email": "", "name": "sqlacrossover", "package_url": "https://pypi.org/project/sqlacrossover/", "platform": "", "project_url": "https://pypi.org/project/sqlacrossover/", "project_urls": { "Bug Tracker": "https://github.com/ei-grad/sqlacrossover/issues", "Documentation": "https://github.com/ei-grad/sqlacrossover", "Homepage": "https://pypi.org/project/sqlacrossover/", "Source Code": "https://github.com/ei-grad/sqlacrossover" }, "release_url": "https://pypi.org/project/sqlacrossover/0.3.1/", "requires_dist": [ "pymysql; extra == 'mysql'", "psycopg2; extra == 'postgresql'" ], "requires_python": "", "summary": "SQLAlchemy-based cross-database migration tool", "version": "0.3.1" }, "last_serial": 4459836, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "e88d94db82485653b975ad62e09a1e4f", "sha256": "6b621a27c7e85611f6b4ca859c3c731e2121728d3f297064ba525f1f8d2c02eb" }, "downloads": -1, "filename": "sqlacrossover-0.2.1.tar.gz", "has_sig": true, "md5_digest": "e88d94db82485653b975ad62e09a1e4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1805, "upload_time": "2015-10-21T17:25:39", "url": "https://files.pythonhosted.org/packages/57/06/db8df23c8d544e2d6b89f9f38ee23fb208cd177d02cbb94805461e7e690d/sqlacrossover-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "53b9e9f8925e1b1d0b4bdff45dc07f58", "sha256": "00e3e1861a17d1cc0caa8bdf5641ec22b526e3b9f5b743217a8c9f4b193c1fee" }, "downloads": -1, "filename": "sqlacrossover-0.2.2.tar.gz", "has_sig": true, "md5_digest": "53b9e9f8925e1b1d0b4bdff45dc07f58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1859, "upload_time": "2015-10-21T18:11:29", "url": "https://files.pythonhosted.org/packages/11/6a/3930a29cadd0d2797f4f23c0d9e145bf8d1fad27edf0d7411917d540f335/sqlacrossover-0.2.2.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "30f8da88f89723e1e3b1a716b339a0e0", "sha256": "15262eabd1fce022d15eb18964759bae508238219e81329297c03383af3e33a3" }, "downloads": -1, "filename": "sqlacrossover-0.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "30f8da88f89723e1e3b1a716b339a0e0", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8617, "upload_time": "2018-11-07T02:51:56", "url": "https://files.pythonhosted.org/packages/db/d0/81686fc05e4c9d845e1045eb12a5ad58cf3f699d45cb74f7ab37b9510749/sqlacrossover-0.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f7b569fe5071e48b1b2029e2c65cb1d3", "sha256": "a17f74d7467fdd0fe599f34621ffb651041b6750b44c33bf5c8442962f79766c" }, "downloads": -1, "filename": "sqlacrossover-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f7b569fe5071e48b1b2029e2c65cb1d3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8616, "upload_time": "2018-11-07T02:51:58", "url": "https://files.pythonhosted.org/packages/81/08/8d26bc2297b565534fdd9f336f131248c3d8ddd95e674df39d0324141e26/sqlacrossover-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df12e11f151fdeb29ea83337494b9802", "sha256": "501c96f64f53c3dbefbef4330fbb1f410ee447e0d49bef20634bd2c9fc6e99be" }, "downloads": -1, "filename": "sqlacrossover-0.3.1.tar.gz", "has_sig": false, "md5_digest": "df12e11f151fdeb29ea83337494b9802", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8240, "upload_time": "2018-11-07T02:51:59", "url": "https://files.pythonhosted.org/packages/1e/11/2e4ad47de6087c6cd897364d8196eadfcfb6dc45aa762eb177cdd15ed0ea/sqlacrossover-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "30f8da88f89723e1e3b1a716b339a0e0", "sha256": "15262eabd1fce022d15eb18964759bae508238219e81329297c03383af3e33a3" }, "downloads": -1, "filename": "sqlacrossover-0.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "30f8da88f89723e1e3b1a716b339a0e0", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8617, "upload_time": "2018-11-07T02:51:56", "url": "https://files.pythonhosted.org/packages/db/d0/81686fc05e4c9d845e1045eb12a5ad58cf3f699d45cb74f7ab37b9510749/sqlacrossover-0.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f7b569fe5071e48b1b2029e2c65cb1d3", "sha256": "a17f74d7467fdd0fe599f34621ffb651041b6750b44c33bf5c8442962f79766c" }, "downloads": -1, "filename": "sqlacrossover-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f7b569fe5071e48b1b2029e2c65cb1d3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8616, "upload_time": "2018-11-07T02:51:58", "url": "https://files.pythonhosted.org/packages/81/08/8d26bc2297b565534fdd9f336f131248c3d8ddd95e674df39d0324141e26/sqlacrossover-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df12e11f151fdeb29ea83337494b9802", "sha256": "501c96f64f53c3dbefbef4330fbb1f410ee447e0d49bef20634bd2c9fc6e99be" }, "downloads": -1, "filename": "sqlacrossover-0.3.1.tar.gz", "has_sig": false, "md5_digest": "df12e11f151fdeb29ea83337494b9802", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8240, "upload_time": "2018-11-07T02:51:59", "url": "https://files.pythonhosted.org/packages/1e/11/2e4ad47de6087c6cd897364d8196eadfcfb6dc45aa762eb177cdd15ed0ea/sqlacrossover-0.3.1.tar.gz" } ] }