Linux本地数据上传到阿里云OSS
这篇文章主要是介绍如何将服务器本地的数据上传到阿里云OSS的指定bucket中,最重要的参考文档是数据迁移单机部署。我第一次上传数据到OSS上时,步骤要比前面的链接中介绍的要麻烦,ossimport工具还是v2.1,现在已经更新到了v2.2,而且阿里云的工程师将很多步骤封装了起来,因此流程简化了不少,大家可以直接参考前面的文档。我这份主要是针对linux服务器单机模式数据上传的,Windows的请直接移步前方链接。
1. 环境配置和工具下载
第一步,要确保Linux本地已经有了Java 1.7及以上的运行环境。查看本机java版本,使用命令 java -version 即可。如果没有,请去网上搜相应的安装教程,有很多,这个不难;
第二步,请从ossimport-2.2.1.zip此链接处下载ossimport工具,使用wget命令即可。
下载到本地后,新建一个my_oss_work文件夹,再利用下述命令
unzip -o ossimport-2.2.1.zip -d my_oss_work
将压缩文件解压到my_oss_work文件夹,完毕。
2. ossimport的相关配置
这一步主要是配置local_job.cfg和sys.properties这两个文件,它们都在上一步解压的my_oss_work/conf文件夹下。
第一步,修改local_job.cfg文件:首先,一定不要修改local_job.cfg的名称和位置,保持不动即可。然后利用vim打开该文件,更改如下设置
srcType=local //因为是本地上传,所以此处设置为local
srcPrefix=/home/my_name/my_data //这里是你本地需要上传的文件夹
destAccessKey=LTAI******bLeL //这个是你阿里云账户的access key,需要你去你的阿里云账户上去找
destSecretKey=A3Ludf*********qbvEUz08DR //这个是你阿里云账户的secret key,也需要你去你自己的账户上去查找。access key 和secret key都是用来对你的身份进行验证的,相当于你传数据到阿里云上时的钥匙,这个钥匙能唯一确定你的OSS
destDomain=http://oss-cn-beijing.aliyuncs.com //这一步很重要,这是你的endpoint,是由你的实际OSS区域确定的。如果你购买了阿里云ECS服务,且是将你ECS主机上的数据上传到OSS,那么这里设置http://oss-cn-beijing-internal.aliyuncs.com;如果你不仅购买了ECS,还设置有VPC专有网络,那么此处设置http://vpc100-oss-cn-beijing.aliyuncs.com;如果你是将自己的服务器(并不是阿里云的ECS主机)比如你学院里的机房上的数据上传到OSS,那么这里设置http://oss-cn-beijing.aliyuncs.com。这些信息都可以在你的OSS账户里面查到。endpoint中的beijing说明我购买的是OSS区域在华北,如果你的在杭州,那么就改为hangzhou。这些都是可以在你的账户里查到的。
destBucket=my_bucket //这是你的OSS的bucket名,你要把数据传到这个bucket上,注意,不要在bucket名字后面加斜线/
destPrefix=my_oss_data //这是你的目标文件夹,你要讲数据传到上面指定的my_bucket的my_oss_data文件夹下,注意此处文件夹开头不要加斜线/
jobName=local_test //这是你的任务名称,注意,此处不需要修改,保持不变即可!!ossimport v2.2单机模式要求这个名称不能更改!!
除了上面几个需要设置和注意以外,其它的都不需要动!保持不变即可!
第二步,修改sys.properties文件:
workerMaxThroughput(KB/s)=0 //这是设置你的上传速度上限,设置为0表示不限制。
注意,sys.properties中的配置项workingDir、workerUserName、workerPassword、privateKeyFile请不要修改!!保持不变即可!!
到此,ossimport的配置到此结束。
3. 运行ossimport和上传数据
使用下述命令
cd my_oss_work
切换到刚才解压的文件夹下,即与import.sh这个文件保持同级,你当前目录下存在着一个叫做import.sh的文件。这个文件将数据上传的操作封装在了一起,你无须管它里面写了什么,只要你前面local_job.cfg和sys_properties这两个文件正确设置了,那么运行命令
bash import.sh
ossimport工具就会依据你之前的设定,将你本地/home/my_name/my_data文件夹下的所有数据上传到你阿里云OSS的my_bucket的my_oss_data文件夹下。整个过程持续的时间,取决于你文件的大小和数量。
上传完毕之后,你就可以去你的OSS上去查看了。
4. 查看上传数据的状态
如果数据量很大,上传需要花费很多时间,我们就可以选择暂时断开连接。断开后,ossimport仍会继续上传数据。当我们再次登陆时,想看一下数据上传的进度,这时就可以切换到my_oss_work文件夹下(也即ossimport的工作目录下),执行下述命令
bash console.sh stat
如果数据仍在上传,则会显示出当前的工作状态和正在运行的任务;如果已经上传结束了,就会显示 JobState:Succeed
5. 其他情况
上述是一键上传,其实也可以逐步上传,这个数据迁移单机部署这个链接处也有介绍,但是要麻烦很多,不建议新手去尝试,直接采用上述一键上传的步骤即可。是否上传成功,取决于你在上面的每一步配置是否正确!
作者:余含军
链接:https://www.jianshu.com/p/ab75de4cb1a6
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
Linux本地数据上传到阿里云OSS的更多相关文章
- 备份MySQL数据库并上传到阿里云OSS存储
1. 环境配置 要将本地文件上传到阿里云oss中, 必须使用阿里云提供的工具 ossutil, 有32位,也有64位的, Linux和Windows都有.具体可以到阿里云官网下载 官网及文档: htt ...
- JavaScript进阶(九)JS实现本地文件上传至阿里云服务器
JS实现本地文件上传至阿里云服务器 前言 在前面的博客< JavaScript进阶(八)JS实现图片预览并导入服务器功能>(点击查看详情)中,实现了JS将本地图片文件预览并上传至阿里云服务 ...
- Windows环境下用C#编程将文件上传至阿里云OSS笔记
Windows环境下用C#编程将文件上传至阿里云OSS笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/detai ...
- Java下载https文件上传到阿里云oss服务器
Java下载https文件上传到阿里云oss服务器 今天做了一个从Https链接中下载音频并且上传到OSS服务器,记录一下希望大家也少走弯路. 一共两个类: 1 .实现自己的证书信任管理器类 /** ...
- 前端(react)上传到阿里云OSS存储 实例
需求背景 由于现有的后台管理系统,上传的视频越来越大,加上上传视频较慢,后端小哥提出直接从前端上传视频或者其他文件到阿里云OSS存储. 阿里云OSS 阿里云OSS文档介绍,这里不做过多赘述 安装 原本 ...
- C# .net Ueditor实现图片上传到阿里云OSS 对象存储
在学习的时候,项目中需要实现在Ueditor编辑器中将图片上传到云储存中,老师演示的是上传到又拍云存储,既然看了一遍,直接照搬不算本事,咱们可以依葫芦画瓢自己来动手玩玩其它的云存储服务. 现在云计算产 ...
- django 文件上传(阿里云oss)下载(支持大文件下载)
1.文件上传 Models 设计 class Upload_File(models.Model): image = models.FileField(upload_to='file/%Y/%m',de ...
- ThinkPHP 文件上传到阿里云OSS上(干货)
参考:http://www.thinkphp.cn/extend/789.html 1.前往阿里云github下载SDK包:https://github.com/aliyun/aliyun-oss-p ...
- 保姆级SpringBoot+Vue图片上传到阿里云OSS教程
小二是新来的实习生,作为技术 leader,我给他安排了一个非常简单的练手任务,把前端 markdown 编辑器里上传的图片保存到服务器端,结果他真的就把图片直接保存到了服务器上,这下可把我气坏了,就 ...
随机推荐
- Luogu 4240:毒瘤之神的考验
传送门 Sol 分开考虑 \(\varphi(ij)\) 中 \(ij\) 的质因子 那么 \[\varphi(ij)=\frac{\varphi(i)\varphi(j)gcd(i,j)}{\var ...
- Angular入门教程一
1 前言 前端技术的发展是如此之快,各种优秀技术.优秀框架的出现简直让人目不暇接,紧跟时代潮流,学习掌握新知识自然是不敢怠慢. AngularJS是google在维护,其在国外已经十分火热,可是国内的 ...
- FineReport如何手动推送APP消息
在报表填报成功后,发送消息至APP会提示数据已更新.再次期间用户需要有查看该模板的权限,如果没有的话,则无法接受到提示信息.那么在FineReport移动端中,如何手动推送APP消息呢? 具体用法 在 ...
- Socket for android 简单实例
最近在实现socket通信,所以写个demo来简单实现下.我用了一种是原始的socket实现,另一种是MINA框架来实现的. 下载demo:http://download.csdn.net/detai ...
- String类型的学习
一 :关于两个string类型变量是否相等: 请运行以下示例代码StringPool.java,查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 分析: 首先为s0开辟空间,然后给s1开辟 ...
- 使用元数据简化jdbc代码---查询操作(用到反射)
使用元数据简化jdbc代码---查询操作(用到反射) 一 思路分析 简化就是把共同的地方提取出来并放到一个方法里,在用到时只要调用就ok了,上一篇介绍了更新的操作,而查询的操作相对来说比较复杂,因为 ...
- matplotlib点线 坐标刻度 3D图绘制(六)
plot语句中支持除X,Y以外的参数,以字符串形式存在,来控制颜色.线型.点型等要素,语法形式为: plt.plot(X, Y, 'format', ...) 1 点和线的样式 颜色 参数color或 ...
- 三、python小功能记录——杀掉进程
import os os.system("taskkill /F /IM python.exe")#旧版 os.system("taskkill /F /IM py.ex ...
- 如此繁荣的移动webapp开发市场:总结当下的一些移动web开发套件
写在前面: 因为移动市场的盛行带动了移动社交.移动购物.手游.智能化硬件等多个新兴领域.智能终端硬件水平越来越高,运行其上的web浏览器能力也越来越强,加上HTML5\JS\CSS的蓬勃发展,Web已 ...
- 7 Dockerfile指令详解 && VOLUME 指令
格式为: VOLUME ["<路径1>", "<路径2>"...] VOLUME <路径> 之前我们说过,容器运行时应该尽量 ...