一、方案背景
由于服务器上数据量越来越大,备份的数据会占用硬盘空间(虽说云硬盘可随时扩容,但是存在风险),定时将备份上传到COS。不仅节省服务器硬盘空间,也大大提高备份数据的安全性、可靠性。

二、操作步骤
1、软件依赖:JDK1.7 或以上
下载链接:https://github.com/tencentyun/cos_migrate_tool_v5

2、解压缩工具包,或者使用git clone直接克隆到本地
Windows
解压并保存到某个目录,例如
C:\Users\Administrator\Downloads\cos_migrate
Linux
解压并保存到某个目录
unzip cos_migrate_tool_v5-master.zip && cd cos_migrate_tool_v5-master
迁移工具结构
正确解压后的 COS Migration 工具目录结构如下所示:
COS_Migrate_tool
|——conf #配置文件所在目录
| |——config.ini #迁移配置文件
|——db #存储迁移成功的记录
|——dep #程序主逻辑编译生成的JAR包
|——log #工具执行中生成的日志
|——opbin #用于编译的脚本
|——src #工具的源码
|——tmp #临时文件存储目录
|——pom.xml #项目配置文件
|——README #说明文档
|——start_migrate.sh #Linux 下迁移启动脚本
|——start_migrate.bat #Windows 下迁移启动脚本
3、修改 config.ini 配置文件
在执行迁移启动脚本之前,需先进行 config.ini 配置文件修改(路径:./conf/config.ini)
以下为从本地迁移、备份到cos
type 表示迁移类型,用户根据迁移需求填写对应的标识。本地[migrateType]的配置内容是type=migrateLocal。
配置迁移任务
用户根据实际的迁移需求进行相关配置,主要包括迁移至目标 COS 信息配置及迁移任务相关配置。

vim conf/config.ini中每项有详细解释说明
配置本地数据源 migrateLocal
若从本地迁移至 COS,则进行该部分配置,具体配置项及说明如下:

4、运行迁移工具
Windows
双击 start_migrate.bat 即可运行。
Linux
从config.ini配置文件读入配置,运行命令为:
sh start_migrate.sh

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

利用脚本实现分月备份
替换备份配置文件中的"月目录"
#!/bin/sh
Date=date |awk '{print $6}'
Path=grep cosPath /data/soft/cos_migrate_tool_v5-master/conf/config.ini |awk -F '/' '{print $3}'
#PATH=grep cosPath /data/scripts/cos.py |awk -F '/' '{print $3}'
/usr/bin/sed -i "s/${Path}/${Date}/g" /data/soft/cos_migrate_tool_v5-master/conf/config.ini

crontab
0 1,13 sh /data/script/bak.sh
0 2
sh /data/soft/cos_migrate_tool_v5-master/start_migrate.sh
0 0 1 sh /data/script/cosdate.sh #每月执行一次

转载于:https://blog.51cto.com/somethingshare/2381099

备份数据上传腾讯云COS相关推荐

  1. react antd-mobile v2图片选择器ImagePicker压缩图片上传腾讯云COS处理方案

    本文介绍:react移动端 antd-mobile V2版本使用图片选择器 ImagePicker时,前端压缩图片并且上传腾讯云COS 如果不上传腾讯云,纯选择压缩,可查看:antd-mobile-v ...

  2. php图片上传腾讯云cos,ThinkPHP集成腾讯云存储(COS)--详解

    准备工作: 一. 根据图示进入COS 点击立即使用 进入后根据下面点击新建:Bucket(Bucket就是你往云存储的一个目录) 新建Bucket 二. 下载SDK 下一步: 然后复制把整个cos文件 ...

  3. php图片上传腾讯云cos,PHP生成腾讯云COS接口需要的请求签名

    COS和请求签名是什么 COS 是腾讯云对象存储的缩写及简称,请求签名是第三方在调用COS相关接口时需要按需提供的.经过特定算法创建而成的一组字符串信息,将唯一的标识当前第三方身份,提供通信双方的身份 ...

  4. 文件遍历上传腾讯云存储COS,根据文件大小自动选择上传方式并且返回url

    工具类实现: import java.io.File; import java.time.LocalDateTime; import java.time.format.DateTimeFormatte ...

  5. 阿里云oss数据迁移到腾讯云cos 方法二(强烈推荐)

    迁移工具使用方法 迁移工具支持将S3, OSS, Qiniu,文件列表等文件迁移到COS对象存储.工具只支持在 linux/macos 下运行,系统自带的Python版本在2.6以上. 系统依赖 工具 ...

  6. 西门子plc使用MQTT把数据上传腾讯云端

    概要 使用1500系列的plc仿真接入腾讯云,实现可以上传数据和下放数据,可实现报警微信推送功能,作为笔记在此储存. 一.准备工作 1.博图v16 2.S7-PLCSIM Advanced V4.0 ...

  7. TP3.2+图片上传腾讯云存储(详细教程)

    tp3.2做图片腾讯云存储 * 项目需求 显示样子 腾讯云操作 前端代码 后端代码 项目需求 前端引用图片上传插件,将图片存储在腾讯云: 显示样子 上传之前样子 上传后效果 腾讯云操作 1.创建存储桶 ...

  8. 传感器如何将消息发送给云服务器,通过 NodeMCU (ESP8266) 将传感器数据上传至 MQTT 云服务...

    本示例将演示如何通过 基于 ESP8266 的 NodeMCU,把通过 DHT11 传感器搜集到的温.湿度数据通过 MQTT 协议将其上报到云端的 MQTT 服务,并且展示应用端如何订阅到这些数据并对 ...

  9. 单片机数据上传到阿里云物联网平台后,如何在手机端和网页端获取获取数据?

    最近遇到了一个需求:单片机上传数据到阿里云物联网平台,手机端或者网页端能够从物联网平台获取数据并显示到出来,再加一个手机端/网页端通过物联网平台控制单片机. 最终采用了阿里云物联网平台提供的方法,使用 ...

最新文章

  1. 色彩(颜色)空间原理(下)
  2. 从网站上扒网页,保存为file文件格式
  3. 线性代数:第一章 线性方程组
  4. 2014-3-9 星期天[周末计划实施总结]
  5. 《第13章 猜拳游戏》
  6. ip route-static 命令的参数
  7. 程序员在未来会变成廉价劳动力(农民工)吗?
  8. mysql 脚本 linux_MySQL的一些功能实用的Linux shell脚本分享
  9. Document Builder: 如何分析rule执行逻辑
  10. ORM框架greenDao 2 (用于了解旧版本的使用方法,目前最新版本为3.2.2,使用注释的方式来生成)...
  11. 快速开发框架工作笔记001---项目开发中整理_整合好的_springcloud快速开发框架_springcloud框架_springcloud架构
  12. 冒泡排序及其三种优化方案
  13. 如何实现一个高速文件下载器
  14. 提高工作效率的软件推荐——我的ABC软件工具箱 6.0 最新版上线啦
  15. Arduino:光立方的开发与实现
  16. 我的Android进阶之旅------Android【设置】-【语言和输入法】-【语言】列表中找到相应语言所对应的列表项...
  17. 微信小程序点击事件传参方法
  18. 【报告分享】快手男性消费用户洞察-36Kr磁力引擎(附下载)
  19. 阿里支付系统就该这么设计(万能通用),稳的一批!
  20. 基于Java/Mysql的个人博客网站

热门文章

  1. Android Hook原理分析--Xposed hook 原理分析
  2. 名帖243 唐寅 行书《题跋达摩六代祖师图》
  3. UDS 2F服务 增加流程
  4. 第一章 1.4操作系统作业调度和进程调度
  5. 一键dd重装linux,一键Linux系统重装脚本 – 懒人版,自定义DD,智能判断网络
  6. 如何用Matlab建立信用风险模型,基于Matlab计算的KMV模型在商业银行信用风险管理中的实践应用.pdf...
  7. FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
  8. 【SAP-PS笔记】结果分析方法01 基于收入的结果分析方式(Result Analysis Method)
  9. Linux平台下二进制安装FastDDS
  10. go语言中的goroutine(协程)