A simple Python tool to transfer data from SQLite 3 to MySQL
Project description
SQLite3 to MySQL
A simple Python tool to transfer data from SQLite 3 to MySQL.
I originally wrote this simple program as a standalone script and published it as a gist as an answer to this Stack Overflow question. Since then quite some people have taken interest in it since it's so simple and effective. Therefore I finally moved my lazy bones and made a GitHub repository :octopus:.
How to run
pip install sqlite3-to-mysql
sqlite3mysql --help
Usage
Usage: sqlite3mysql [OPTIONS]
Transfer SQLite to MySQL using the provided CLI options.
Options:
-f, --sqlite-file PATH SQLite3 database file [required]
-t, --sqlite-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.
-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.
--mysql-integer-type TEXT MySQL default integer field type. Defaults to
INT(11).
--mysql-string-type TEXT MySQL default string field type. Defaults to
VARCHAR(255).
-c, --chunk INTEGER Chunk reading/writing SQL records
-l, --log-file PATH Log file
--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/sqlite3-to-mysql
cd sqlite3-to-mysql
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/sqlite3-to-mysql
cd sqlite3-to-mysql
python3 -m venv env
source env/bin/activate
pip install -e .
pip install -r requirements_dev.txt
tox
Note
After a LONG time I finally found the time to write the complimentary script to transfer MySQL to SQLite3. Check it out :)
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
sqlite3-to-mysql-1.3.1.tar.gz
(22.5 kB
view hashes)
Built Distribution
Close
Hashes for sqlite3_to_mysql-1.3.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 130123b7d16c8ed0cb51fc618f8fa953d2aae4d1aafec2ee659577ef060ffc91 |
|
MD5 | b936c561693020fa88a61a62b73940cd |
|
BLAKE2b-256 | d705084e200fe382b279713f3cc8f68ed9bb0156509986b3c6a8137e1666918f |