Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: mysql2json import/export tool #2

Merged
merged 1 commit into from
Jan 22, 2025
Merged

Conversation

IvanChepurnyi
Copy link
Member

new tool that allows quickly export and import data without modifying database structure

feat(config): created JSONSchema for configuration files
it allows to show nice errors messages for each incorrect value and defines defaults for configuration

feat(config): added includeTables and excludeTables rules
it is possible to define various table matching rules for the tool

feat(config): added concurrency settings
it is possible to control number of processes to use for parallel export/import

feat(config): added batchSize setting
it is possible to specify in configuration how many rows to import per batch

feat(config): added importMode setting of truncate and update
it is possible to specify if import replaces table completely or update current rows in it

feat(command): added mysql2jsonl export command
it exports data into JSONL file into desired directory with possibility to override concurrency

feat(command): added mysql2jsonl import command
it imports data form directory with JSONL files with possibility to override both concurrency and batch size

feat(build): added Phar version to release pipeline
it is possible to download now phar file with the tool, without installing it via composer

new tool that allows quickly export and import data without modifying database structure

feat(config): created JSONSchema for configuration files
  it allows to show nice errors messages for each incorrect value and defines defaults for configuration

feat(config): added `includeTables` and `excludeTables` rules
  it is possible to define various table matching rules for the tool

feat(config): added `concurrency` settings
  it is possible to control number of processes to use for parallel export/import

feat(config): added `batchSize` setting
  it is possible to specify in configuration how many rows to import per batch

feat(config): added `importMode` setting of `truncate` and `update`
  it is possible to specify if import replaces table completely or update current rows in it

feat(command): added `mysql2jsonl export` command
  it exports data into JSONL file into desired directory with possibility to override concurrency

feat(command): added `mysql2jsonl import` command
  it imports data form directory with JSONL files with possibility to override both concurrency and batch size

feat(build): added Phar version to release pipeline
  it is possible to download now phar file with the tool, without installing it via composer
@IvanChepurnyi IvanChepurnyi merged commit 8a49239 into main Jan 22, 2025
8 checks passed
@IvanChepurnyi IvanChepurnyi deleted the upcoming-release branch January 22, 2025 21:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant