startReplicationTask method
- required String replicationTaskArn,
- required StartReplicationTaskTypeValue startReplicationTaskType,
- String? cdcStartPosition,
- DateTime? cdcStartTime,
- String? cdcStopPosition,
Starts the replication task.
For more information about AWS DMS tasks, see Working with Migration Tasks in the AWS Database Migration Service User Guide.
May throw ResourceNotFoundFault. May throw InvalidResourceStateFault. May throw AccessDeniedFault.
Parameter replicationTaskArn
:
The Amazon Resource Name (ARN) of the replication task to be started.
Parameter startReplicationTaskType
:
A type of replication task.
Parameter cdcStartPosition
:
Indicates when you want a change data capture (CDC) operation to start.
Use either CdcStartPosition or CdcStartTime to specify when you want a CDC
operation to start. Specifying both values results in an error.
The value can be in date, checkpoint, or LSN/SCN format.
Date Example: --cdc-start-position “2018-03-08T12:12:12”
Checkpoint Example: --cdc-start-position "checkpoint:V1#27#mysql-bin-changelog.157832:1975:-1:2002:677883278264080:mysql-bin-changelog.157832:1876#0#0#*#0#93"
LSN Example: --cdc-start-position “mysql-bin-changelog.000024:373”
Parameter cdcStartTime
:
Indicates the start time for a change data capture (CDC) operation. Use
either CdcStartTime or CdcStartPosition to specify when you want a CDC
operation to start. Specifying both values results in an error.
Timestamp Example: --cdc-start-time “2018-03-08T12:12:12”
Parameter cdcStopPosition
:
Indicates when you want a change data capture (CDC) operation to stop. The
value can be either server time or commit time.
Server time example: --cdc-stop-position “server_time:2018-02-09T12:12:12”
Commit time example: --cdc-stop-position “commit_time: 2018-02-09T12:12:12 “
Implementation
Future<StartReplicationTaskResponse> startReplicationTask({
required String replicationTaskArn,
required StartReplicationTaskTypeValue startReplicationTaskType,
String? cdcStartPosition,
DateTime? cdcStartTime,
String? cdcStopPosition,
}) async {
ArgumentError.checkNotNull(replicationTaskArn, 'replicationTaskArn');
ArgumentError.checkNotNull(
startReplicationTaskType, 'startReplicationTaskType');
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AmazonDMSv20160101.StartReplicationTask'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'ReplicationTaskArn': replicationTaskArn,
'StartReplicationTaskType': startReplicationTaskType.toValue(),
if (cdcStartPosition != null) 'CdcStartPosition': cdcStartPosition,
if (cdcStartTime != null)
'CdcStartTime': unixTimestampToJson(cdcStartTime),
if (cdcStopPosition != null) 'CdcStopPosition': cdcStopPosition,
},
);
return StartReplicationTaskResponse.fromJson(jsonResponse.body);
}