
DM is an integrated platform, supports migrating data from MySQL/MariaDB to TiDB.
Architecture

Documentation
Building
To check the code style and build binaries, you can simply run:
make build
Notice DM supports building with Go version Go >= 1.11.4
, and unit test preparation can be found in Running/Unit Test
If you only want to build binaries, you can run:
make dm-worker # build DM-worker
make dm-master # build DM-master
make dmctl # build dmctl
When DM is built successfully, you can find binaries in the bin
directory.
Run Test
Run all tests, including unit test and integration test
make test
Installing
- The best way to install DM is via DM-Ansible
- deploy DM manually
# Download the DM package.
wget http://download.pingcap.org/dm-latest-linux-amd64.tar.gz
wget http://download.pingcap.org/dm-latest-linux-amd64.sha256
# Check the file integrity. If the result is OK, the file is correct.
sha256sum -c dm-latest-linux-amd64.sha256
# Extract the package.
tar -xzf dm-latest-linux-amd64.tar.gz
cd dm-latest-linux-amd64
Config File
- all sample config files can be found in directory
conf
of dm tarball
- sample config file of dm-master:
bin/dm-master -print-sample-config
- sample config file of dm-worker:
bin/dm-worker -print-sample-config
Contributing
Contributions are welcomed and greatly appreciated. See CONTRIBUTING.md
for details on submitting patches and the contribution workflow.
License
DM is under the Apache 2.0 license. See the LICENSE file for details.