Skip to main content

A simple Python tool to transfer data from MySQL to SQLite 3

Project description

PyPI Downloads PyPI - Python Version MySQL Support MariaDB Support GitHub license Contributor Covenant Code style: black Codacy Badge Build Status codecov GitHub stars

MySQL to SQLite3

A simple Python tool to transfer data from MySQL to SQLite 3.

This is the long overdue complimentary tool to my SQLite3 to MySQL. It transfers all data from a MySQL database to a SQLite3 database.

How to run

pip install mysql-to-sqlite3
mysql2sqlite --help

Usage

Usage: mysql2sqlite [OPTIONS]

  Transfer MySQL to SQLite using the provided CLI options.

Options:
  -f, --sqlite-file PATH          SQLite3 database file  [required]
  -d, --mysql-database TEXT       MySQL database name  [required]
  -u, --mysql-user TEXT           MySQL user  [required]
  -p, --prompt-mysql-password     Prompt for MySQL password
  --mysql-password TEXT           MySQL password
  -t, --mysql-tables TUPLE        Transfer only these specific tables (space
                                  separated table names). Implies --without-
                                  foreign-keys which inhibits the transfer of
                                  foreign keys.

  -L, --limit-rows INTEGER        Transfer only a limited number of rows from
                                  each table.

  -C, --collation [BINARY|NOCASE|RTRIM]
                                  Create datatypes of TEXT affinity using a
                                  specified collation sequence.  [default:
                                  BINARY]

  -K, --prefix-indices            Prefix indices with their corresponding
                                  tables. This ensures that their names remain
                                  unique across the SQLite database.

  -X, --without-foreign-keys      Do not transfer foreign keys.
  -W, --without-data              Do not transfer table data, DDL only.
  -h, --mysql-host TEXT           MySQL host. Defaults to localhost.
  -P, --mysql-port INTEGER        MySQL port. Defaults to 3306.
  -S, --skip-ssl                  Disable MySQL connection encryption.
  -c, --chunk INTEGER             Chunk reading/writing SQL records
  -l, --log-file PATH             Log file
  --json-as-text                  Transfer JSON columns as TEXT.
  -V, --vacuum                    Use the VACUUM command to rebuild the SQLite
                                  database file, repacking it into a minimal
                                  amount of disk space

  --use-buffered-cursors          Use MySQLCursorBuffered for reading the
                                  MySQL database. This can be useful in
                                  situations where multiple queries, with
                                  small result sets, need to be combined or
                                  computed with each other.

  -q, --quiet                     Quiet. Display only errors.
  --version                       Show the version and exit.
  --help                          Show this message and exit.

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

mysql-to-sqlite3-1.4.10.tar.gz (30.3 kB view details)

Uploaded Source

Built Distribution

mysql_to_sqlite3-1.4.10-py2.py3-none-any.whl (15.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file mysql-to-sqlite3-1.4.10.tar.gz.

File metadata

  • Download URL: mysql-to-sqlite3-1.4.10.tar.gz
  • Upload date:
  • Size: 30.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for mysql-to-sqlite3-1.4.10.tar.gz
Algorithm Hash digest
SHA256 25246d3b644eb315193c173e57e318c9a45f1259f7147ad8780043e498bca3cf
MD5 385bd9e0ce8d545ea95a11b6e709d9c1
BLAKE2b-256 1e500d9359b46a6f7dbcc580c73e231ba4e75730d21de47f2de0a6181f6be5f3

See more details on using hashes here.

File details

Details for the file mysql_to_sqlite3-1.4.10-py2.py3-none-any.whl.

File metadata

  • Download URL: mysql_to_sqlite3-1.4.10-py2.py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for mysql_to_sqlite3-1.4.10-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8285a6334a0598330e1a62fc89bc09179b2d2e90a2e06a5121954c5e156ceb56
MD5 3c2df5f8f45affa902d1c33b5203eff0
BLAKE2b-256 17c4912a87d12e87a40565a21a249bf27f042407a1f30b12caba1b0b4c4a33f2

See more details on using hashes here.

Supported by

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