Tool for conversion of MySQL dumps to TSV format
Project description
About
This module provides the mysqltotsv.Splitter class and a CLI tool to allow conversion of large MySQL dumps to the TSV format.
The module assumes the MySQL dump to be encoded in UTF-8 format.
This is primarily intended for large MySQL dumps where opening them with a text editor is impractical and handling them is easier through a tool.
Install
To install from pypi:
pip3 install --user mysqltotsv
Usage
The following command takes a MySQL dump and creates a separate TSV file for each table found inside (the output directory needs to be present):
python3.7 mysql-to-tsv.py --file dump.sql --outdir out1
There is also a switch to only process certain tables and skip the rest. Example:
python3.7 mysql-to-tsv.py --file dump.sql --outdir out1 --table-filter=updates,updates_edited
More details about the CLI switches:
usage: mysql-to-tsv.py [-h] --file FILE --outdir OUTDIR
[--table-filter TABLE_FILTER] [--only-schema]
[--strip-quotes] [--debug] [--ignore-errors]
[--estimate1] [--estimate2]
Tool for conversion of large MySQL dumps to TSV format
optional arguments:
-h, --help show this help message and exit
--file FILE mysql dump file
--outdir OUTDIR output directory
--table-filter TABLE_FILTER
filtered tables
--only-schema write the schema to the output directory
--strip-quotes strip quotes from values
--debug print debug information
--ignore-errors ignore processing errors
--estimate1 estimate row counts for each table inside the sql file
--estimate2 estimate row counts for each table inside the sql file
Ideas
- Rewrite the module to parse the entire INSERT INTO statement instead of the hybrid ad-hoc + grammar-based approach.
- Write a better estimator that samples a few records, measures their size, for each table, then measures the entire file size and computes an estimate based on that.
Support
For questions or requests please send an e-mail to stefan.petrea@gmail.com
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
Built Distribution
Hashes for mysqltotsv-0.1.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9001bc8e3df3b413c575246f76799cd5e5b1e8a98abc202920ec2f33794b9f07 |
|
MD5 | b02b87ff0de33f27838dc1a35ce686ef |
|
BLAKE2b-256 | 8df519754bc02d6e1a86659134915fc05a728779f057c0c8244828b02be4abfe |