如何配置cdc写入到s3

https://asktug.com/t/topic/95744
上面帖子里描述了cdc同步到S3的故障处理,目前从官网中只有5.3及以上版本有一个 灾难场景的最终一致性复制 的cdc同步到S3配置,上述帖子是21年7月份的 5.3版本还没有出来,怎么开启的cdc同步到S3,是否可以只同步到S3不用配置其他类型下游?

$ cdc cli changefeed create --pd=“http://10.172.65.146:2379” --sink-uri=“s3://btjh-cdc?endpoint=http://10.172.65.151:9000/” --changefeed-id=“btjh-task” --sort-engine=“unified” --config=cdc_task.yaml
Create changefeed successfully!
$ cdc cli changefeed list
[
{
“id”: “btjh-task”,
“summary”: {
“state”: “error”,
“tso”: 431409274189774851,
“checkpoint”: “2022-02-24 17:42:58.617”,
“error”: {
“addr”: “10.172.65.151:8300”,
“code”: “CDC:ErrOwnerUnknown”,
“message”: “NoCredentialProviders: no valid providers in chain. Deprecated.
\tFor verbose messaging see aws.Config.CredentialsChainVerboseErrors”
}
}
}
]

1 个赞

我们是只用了 cdc 同步到 s3,做增量备份,没有同步到其他下游的。

1 个赞

大佬如何配置的,没看到相关的配置参数呢

1 个赞

cdc同步到s3的功能5.4开始就被删除了,5.3以前的版本就才可以用,但是官方文档没有写,我也是自己看源码再试出来的,只需要在创建任务的时候配好sink-uri就行,和其他类型的下游一样,例如:

--sink-uri="s3://tidb-test/cdclog/?endpoint=http://10.0.0.1:9000&access-Key=xxx&secret-Access-Key=xxx"

其中tidb-test是bucket名

5 个赞

:+1:感谢! 这功能取消可惜了

大佬在问下 cdc写出来的日志如何解析和apply?

可以使用br进行恢复

:+1:
牛X plus

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。