A simple Python tool to transfer data from SQLite 3 to MySQL
Project description
SQLite3 to MySQL
A simple Python script 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:.
Tested to work on Python 2.7 and 3.5+
How to run
- using Python 2.7
virtualenv -p $(which python2) env
source env/bin/activate
pip install sqlite3-to-mysql
sqlite3mysql --help
- using Python 3.5+
python3 -m venv env
source env/bin/activate
pip install sqlite3-to-mysql
sqlite3mysql --help
Usage
Usage: sqlite3mysql [OPTIONS]
Options:
-f, --sqlite-file PATH SQLite3 db 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.
--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.2.4.tar.gz
(8.3 kB
view hashes)