A simple Python tool to transfer data from MySQL to SQLite 3
Project description
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]
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
-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
Note
Python 3.8 is currently not supported because at the moment of writing the most recent version of MySQL Connector/Python v8.0.17 still contains a reference to a feature deprecated in Python 3.5 and removed in Python 3.8:
mysql/connector/connection.py:126: DeprecationWarning: dist() and linux_distribution() functions are deprecated in Python 3.5
Project details
Release history Release notifications | RSS feed
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.2.6.tar.gz
(18.9 kB
view details)
File details
Details for the file mysql-to-sqlite3-1.2.6.tar.gz.
File metadata
- Download URL: mysql-to-sqlite3-1.2.6.tar.gz
- Upload date:
- Size: 18.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5967c3cb73e44a24b43134c4baf4e637b679c142651ff7b07cb670368ddb6f7
|
|
| MD5 |
33478e374b884d25f5d93af563677abc
|
|
| BLAKE2b-256 |
74b81635d443c4749a7daa159f03fe9db5b399b2153e67ba991c83e970087ba8
|