Skip to content

ran-huang/dm

 
 

Repository files navigation

Data Migration Platform

Build Status GitHub release Coverage Status codecov Go Report Card

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

Architecture

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.

About

Data Migration Platform

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 85.1%
  • Shell 5.6%
  • TSQL 5.2%
  • TypeScript 3.6%
  • Makefile 0.3%
  • Python 0.1%
  • Other 0.1%