mysqldumpsplitter
Inspired by Kedarvj's shell script by the same name.
https://github.com/kedarvj/mysqldumpsplitter
Installation
Build
$ crystal build --release -o bin/mysqldumpsplitter
Usage
Help
bin/mysqldumpsplitter --help
List all the tables in a dump file
bin/mysqldumpsplitter --desc ./path/to/file.sql
Extract a single table from an *.sql dump file to .sql.gz
# Default output file is gzip compressed
bin/mysqldumpsplitter --extract TABLE --match some_table_name ./path/to/file.sql
Decompressed output file
bin/mysqldumpsplitter --extract TABLE --match some_table_name --compression none ./path/to/file.sql
Extract all tables from a dump file
bin/mysqldumpsplitter --extract ALLTABLES ./path/to/file.sql
Development
- Single database file
- [x] Describe tables
- [x] Extract single table
- [x] Extract all tables
- [x] Compression
- [ ] Decompression
- [ ] Estimate table size
- Multiple Databases in one file
- [ ] Extract single database
- [ ] Extract multiple databases
Contributing
- Fork it (https://github.com/nulty/mysqldumpsplitter/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Testing
**Build the project before running tests as some tests depend on the executable
crystal spec
Contributors
- nulty Iain McNulty - creator, maintainer