Skip to content

Files

Latest commit

ba90abd · Feb 5, 2025

History

History
This branch is up to date with pingcap/tidb:master.

dumpling

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jul 4, 2022
Apr 12, 2023
Jun 7, 2022
Jan 7, 2025
Jun 7, 2022
Jan 17, 2025
Nov 1, 2023
Feb 5, 2025
Apr 17, 2024
Oct 26, 2021

🥟 Dumpling

API Docs

Dumpling is a tool and a Go library for creating an SQL dump from a MySQL-compatible database. It is intended to replace mysqldump and mydumper when targeting TiDB.

You may read the original design document. The end-user documentation is available here: en, zh, ja.

Features

Dumpling is in active development. Contributions are welcomed!

  • SQL dump is split into multiple files (like mydumper) for easy management.
  • Export multiple tables in parallel to speed up execution.
  • Multiple output formats: SQL, CSV, ...
  • Write to cloud storage (S3, GCS) natively
  • Advanced table filtering

Any questions? Discord, Slack and other contact options can be found here

Building

  1. Under directory tidb
  2. Install Go 1.23.6 or above
  3. Run make build_dumpling to compile. The output is in bin/dumpling.
  4. Run make dumpling_unit_test to run the unit tests.
  5. Run make dumpling_integration_test to run integration tests. For integration test:
  • The following executables must be copied or generated or linked into these locations:
  • The following programs must be installed:
    • mysql (the CLI client)
  • There must be a local mysql server listening on 127.0.0.1:3306, and an active user with no password that can be connected through this TCP address.

License

Dumpling is under the Apache 2.0 license. See the LICENSE file for details.