Data Migration Platform
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.