1、背景
网上看了很多内容,没看到有开源datax兼容minio相关的资料。笔者针对近期的项目需求,做了这块的二开,提供出来供大家使用
2、二开的原因
二开这块的原因是,笔者本来想用osswriter来从mysql写到minio,但是osswriter支持的协议是s4,但是minio支持的协议是s3,所以用osswriter会报错如下:
Error><Code>InvalidRequest</Code><Message>The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.</Message><Resource>/szjx/</Resource><RequestId></RequestId><HostId></HostId></Error>
所以,这边找资料发现aws有这块的东西,并且支持s3协议,所以选择了对aws的writer进行了二开
mysql同步数据到minio
接下来笔者会传两个plugin,熟悉datax的应该知道怎么用的,另外模版也会放在下面,笔者已经写入成功了
"writer": {"name": "amazons3writer","parameter": {"region":"mock","endpoint": "ip-地址","accessId": "minio账号","accessKey": "minio密码","bucket": "test","object": "aa/test.csv","encoding": "UTF-8","fieldDelimiter": ",","writeMode": "truncate"}}
region的参数需要默认“mock”,其他参数按照需求填写,具体可以去github参考datax的oss方面的参数说明