数据备份到对象存储(cos)

2022-12-28 20:01:49 浏览数 (1)

之前我,写过利用bypy crontab 实现定时数据备份到百度网盘, ,大家也知道百度网盘的一个缺点就是下载速度太慢,当然如果你是会员就当我没说,下面给你们介绍如何把数据备份到腾讯的cos中,腾讯的数据存储新用户会有6个月的50G标准存储容量。 环境:Java和腾讯云的迁移工具

https://github.com/tencentyun/cos_migrate_tool_v5

迁移工具

功能说明

迁移工具集成了有关COS数据迁移的功能, 目前支持以下四大类迁移

  • 本地数据迁移到COS, 功能同之前的本地同步工具
  • 友商数据迁移到COS, 目前支持aws s3, 阿里云oss, 七牛存储, 又拍云存储
  • 根据url下载列表进行下载迁移
  • COS的bucket数据相互复制, 支持跨账号跨地域的数据复制

运行依赖

  • JDK1.8或以上, 有关JDK的安装请参考JAVA安装与配置
  • linux或windows环境, 推荐linux

使用范例

1、配置全部通过配置文件读入

代码语言:javascript复制
sh start_migrate.sh

2、指定部分配置项以命令行为主.

代码语言:javascript复制
sh start_migrate.sh -DmigrateLocal.localPath=/test_data/aaa/ -Dcommon.cosPath=/aaa
sh start_migrate.sh -DmigrateAws.prefix=/test_data/bbb/ -Dcommon.cosPath=/bbb

迁移机制

迁移工具是有状态的,已经迁移成功的会记录在db目录下,以KV的形式存储在leveldb文件中. 每次迁移前对要迁移的路径, 先查找下DB中是否存在, 如果存在,且属性和db中存在的一致, 则跳过迁移, 否则进行迁移。这里的属性根据迁移类型的不同而不同,对于本地迁移,会判断mtime。对于友商与bucket复制,会判断源文件的etag和长度是否与db一致。 因此,我们参照的db中是否有过迁移成功的记录,而不是查找COS,如果绕过了迁移工具,通过别的方式(比如coscmd或者控制台)删除修改了文件,那么运行迁移工具由于不会察觉到这种变化,是不会重新迁移的。

其他

请参照COS迁移工具官网文档

Java安装:

1、下载 JDK 进入 Oracle 官方网站 下载合适的 JDK 版本,准备安装。 或者下载我用的安装包:https://share.weiyun.com/5p7MsV6c

2、创建目录 执行如下命令,在 /usr/ 目录下创建 java 目录。

代码语言:javascript复制
mkdir /usr/java
cd /usr/java

将下载的文件 jdk-8u151-linux-x64.tar.gz 复制到 /usr/java/ 目录下。

3、解压 JDK 执行如下命令,解压文件。

代码语言:javascript复制
tar -zxvf jdk-8u151-linux-x64.tar.gz 

4、设置环境变量 编辑 /etc/profile 文件,在 profile 文件中添加如下内容并保存:

代码语言:javascript复制
set java environment
JAVA_HOME=/usr/java/jdk1.8.0_28
JRE_HOME=/usr/java/jdk1.8.0_281/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

使之修改生效,执行如下:

代码语言:javascript复制
source /etc/profile 

5、测试 执行如下命令进行测试。

代码语言:javascript复制
java -version

若显示 Java 版本信息,则说明 JDK 安装成功:

代码语言:javascript复制
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

下载并配置cos工具 1、解压并保存到某个目录

代码语言:javascript复制
unzip cos_migrate_tool_v5-master.zip && cd cos_migrate_tool_v5-master

2、迁移工具结构 正确解压后的 COS Migration 工具目录结构如下所示:

代码语言:javascript复制
    COS_Migrate_tool
    |——conf #配置文件所在目录
    | |——config.ini #迁移配置文件
    |——db #存储迁移成功的记录
    |——dep #程序主逻辑编译生成的JAR包
    |——log #工具执行中生成的日志
    |——opbin #用于编译的脚本
    |——src #工具的源码
    |——tmp #临时文件存储目录
    |——pom.xml #项目配置文件
    |——README #说明文档
    |——start_migrate.sh #Linux 下迁移启动脚本
    |——start_migrate.bat #Windows 下迁移启动脚本

这里主要配置config.ini文件

代码语言:javascript复制
    vim conf/config.ini 

配置好之后保存 创建腾讯对象存储桶

创建目录

开始测试

代码语言:javascript复制
    sh start_migrate.sh 

由于我备份的数据大上传的速度会慢一些,只需等待即可

出现上图结过表示备份成功

0 人点赞