MySQL generates a dump file with mysqldump. This is a simple Rust program that parses the dump file and converts the inserted values into a CSV file.
To generate a compatible SQL dump file from MySQL, use the mysqldump command.
mysqldump -u username -p database_name table_name > dump.sql- Reads a
.sqldump file - Extracts column headers from the
INSERT INTOstatement - Cleans SQL syntax (parentheses, commas, quotes, semicolons)
- Writes the parsed data to a
.csvfile
- Opens a file passed as an argument or
dump.sql - Looks for an
INSERT INTOstatement - Extracts column names from the header
- Parses each row of inserted values
- Cleans each value using a regular expression
- Writes the results to
dump.csv
- File
- Must contain at least one
INSERT INTOstatement - Expected format (simplified):
INSERT INTO table_name (col1, col2, col3)
VALUES
('a', 'b', 'c'),
('d', 'e', 'f');