导出数据到阿里云OSS

最近碰到需要将大文件(大于5G)上传到阿里云的OSS上,结果发现osscmd 并不支持大文件的上传,需要使用AliyunCli 的MultiUpload 命令。该命令会将一个大文件分割成多个part,然后进行上传,如果其中某个part 上传失败,可以根据upload_id 重传失败的部分。

  1. 登陆console.aliyun.com,获取access_id 和access_key。
  2. 安装
$ sudo pip install aliyuncli
$ sudo pip install aliyun-python-sdk-core
$ sudo pip install aliyun-python-sdk-oss
  1. 配置oss 访问
$ aliyuncli oss Config --host oss-cn-shanghai.aliyuncs.com --accessid access_id --accesskey access_key
  1. 查看bucket 来验证是否能够访问
$ aliyuncli oss GetAllBucket
  1. 上传文件
$ aliyuncli oss MultiUpload /data/myfile.tar.gz oss://my-bucket/data/myfile.tar.gz
  1. 查看是否有part 上传失败,如果有,可以通过upload_id 重新上传失败的部分
$ aliyuncli oss ListParts oss://my-bucket
$ aliyuncli oss MultiUpload /data/myfile.tar.gz oss://my-bucket/data/myfile.tar.gz --upload_id FDA772C81359463FA98FEFCA79985C8E
  1. 如果文件的所有part都上传成功,可以在控制台的管理页面里看到该文件,否则不会显示该文件。

其他命令可详见官方文档

你可能感兴趣的:(导出数据到阿里云OSS)