使用 dmctl 运维 TiDB Data Migration 集群
dmctl 是用来运维 DM 集群的命令行工具,支持交互模式和命令模式。
dmctl 交互模式
进入交互模式,与 DM-master 进行交互:
./dmctl --master-addr 172.16.30.14:8261
Welcome to dmctl
Release Version: ${version}
Git Commit Hash: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Git Branch: release-x.x
UTC Build Time: yyyy-mm-dd hh:mm:ss
Go Version: go version gox.xx linux/amd64
» help
DM control
Usage:
dmctl [command]
Available Commands:
binlog manage or show binlog operations
binlog-schema manage or show table schema in schema tracker
check-task Checks the configuration file of the task
config manage config operations
encrypt Encrypts plain text to cipher text
help Gets help about any command
list-member Lists member information
offline-member Offlines member which has been closed
operate-leader `evict`/`cancel-evict` the leader
operate-source `create`/`stop`/`show` upstream MySQL/MariaDB source
pause-relay Pauses DM-worker's relay unit
pause-task Pauses a specified running task or all (sub)tasks bound to a source
purge-relay Purges relay log files of the DM-worker according to the specified filename
query-status Queries task status
resume-relay Resumes DM-worker's relay unit
resume-task Resumes a specified paused task or all (sub)tasks bound to a source
shard-ddl-lock maintain or show shard-ddl locks information
start-relay Starts workers pulling relay log for a source
start-task Starts a task as defined in the configuration file
stop-relay Stops workers pulling relay log for a source
stop-task Stops a specified task or all (sub)tasks bound to a source
transfer-source Transfers a upstream MySQL/MariaDB source to a free worker
Flags:
-h, --help help for dmctl
-s, --source strings MySQL Source ID.
Use "dmctl [command] --help" for more information about a command.
dmctl 命令模式
命令模式跟交互模式的区别是,执行命令时只需要在 dmctl 命令后紧接着执行任务操作,任务操作同交互模式的参数一致。
./dmctl --master-addr 172.16.30.14:8261 start-task task.yaml
./dmctl --master-addr 172.16.30.14:8261 stop-task task
./dmctl --master-addr 172.16.30.14:8261 query-status
export DM_MASTER_ADDR="172.16.30.14:8261"
./dmctl query-status
Available Commands:
binlog manage or show binlog operations
binlog-schema manage or show table schema in schema tracker
check-task Checks the configuration file of the task
config manage config operations
encrypt Encrypts plain text to cipher text
help Gets help about any command
list-member Lists member information
offline-member Offlines member which has been closed
operate-leader `evict`/`cancel-evict` the leader
operate-source `create`/`stop`/`show` upstream MySQL/MariaDB source
pause-relay Pauses DM-worker's relay unit
pause-task Pauses a specified running task or all (sub)tasks bound to a source
purge-relay Purges relay log files of the DM-worker according to the specified filename
query-status Queries task status
resume-relay Resumes DM-worker's relay unit
resume-task Resumes a specified paused task or all (sub)tasks bound to a source
shard-ddl-lock maintain or show shard-ddl locks information
start-relay Starts workers pulling relay log for a source
start-task Starts a task as defined in the configuration file
stop-relay Stops workers pulling relay log for a source
stop-task Stops a specified task or all (sub)tasks bound to a source
transfer-source Transfers a upstream MySQL/MariaDB source to a free worker
Flags:
--config string Path to config file.
-h, --help help for dmctl
--master-addr string Master API server address, this parameter is required when interacting with the dm-master
--rpc-timeout string RPC timeout, default is 10m. (default "10m")
-s, --source strings MySQL Source ID.
--ssl-ca string Path of file that contains list of trusted SSL CAs for connection.
--ssl-cert string Path of file that contains X509 certificate in PEM format for connection.
--ssl-key string Path of file that contains X509 key in PEM format for connection.
-V, --version Prints version and exit.
Use "dmctl [command] --help" for more information about a command.