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 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, --mysql-password TEXT   MySQL password
  -t, --mysql-tables TEXT     Transfer only these specific tables (space
                              separated table names). Implies --without-
                              foreign-keys which inhibits the transfer of
                              foreign keys.
  -X, --without-foreign-keys  Do not transfer foreign keys.
  -h, --mysql-host TEXT       MySQL host. Defaults to localhost.
  -P, --mysql-port INTEGER    MySQL port. Defaults to 3306.
  -c, --chunk INTEGER         Chunk reading/writing SQL records
  -l, --log-file PATH         Log file
  -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.
  --help                      Show this message and exit.

Testing

In order to run the test suite run these commands using a Docker MySQL image.

Requires a running Docker instance!

  • using Python 2.7
git clone https://github.com/techouse/mysql-to-sqlite3
cd mysql-to-sqlite3
virtualenv -p $(which python2) env
source env/bin/activate
pip install -e .
pip install -r requirements_dev.txt
tox
  • using Python 3.5+
git clone https://github.com/techouse/mysql-to-sqlite3
cd mysql-to-sqlite3                   
python3 -m venv env
source env/bin/activate
pip install -e .
pip install -r requirements_dev.txt
tox

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.3.1.tar.gz (22.3 kB view details)

Uploaded Source

Built Distribution

mysql_to_sqlite3-1.3.1-py2.py3-none-any.whl (12.2 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: mysql-to-sqlite3-1.3.1.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.3

File hashes

Hashes for mysql-to-sqlite3-1.3.1.tar.gz
Algorithm Hash digest
SHA256 8f81ee50dec2510b10a5591392b19826a722003f97ea7c9c214cd99deb6ddfb8
MD5 c14ae2fc6413785593cdc381ee80acdb
BLAKE2b-256 7408006538c31c904d4fd9e1baea80f049b3f1a80d308d510910a957ba11da92

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mysql_to_sqlite3-1.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.3

File hashes

Hashes for mysql_to_sqlite3-1.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6d6e18672b7b71549c808fb55144cd0243a9c466376b8d6d4e00bd555c7eb21f
MD5 523e2331dd3c621e7287dc6d8ba897a7
BLAKE2b-256 c039600812896667ac7161ee691bd1e0b32b15457540784b700dae7b091039b7

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