备份数据上传腾讯云cos(代码片段)

author author     2023-03-15     710

关键词:

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

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

2、解压缩工具包,或者使用git clone直接克隆到本地
Windows
解压并保存到某个目录,例如
C:UsersAdministratorDownloadscos_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 #每月执行一次

flutter腾讯云上传腾讯云cos使用flutter1.121.17及以上版本ios与flutter混合开发(代码片段)

flutter腾讯云上传腾讯云cos使用flutter1.121.17及以上版本ios与flutter混合开发前言这里是安卓的相关代码首先注册腾讯云的cos相关功能代码部分在这里创建两个文件下面是对应的代码TencentCosPlugin.hTencentCosPlugin.m然后再继续注册这个混... 查看详情

mysql5.7.40备份到腾讯云cos+从cos恢复(代码片段)

1备份1.1安装coscli#wgethttps://github.com/tencentyun/coscli/releases/download/v0.12.0-beta/coscli-linux#mvcoscli-linux/usr/bin/coscli#chmod755/usr/bin/coscli#coscli--version如果github慢可以使用国内镜像:wgethttps://cosbrowser.cloud.tencent.com/software/coscli/coscli-linux1.2准... 查看详情

腾讯云cos对象存储的简单使用(代码片段)

...,于是就撸起袖子传了几张珍藏的高清大图上去,现将其上传的简单使用步骤总结一波(其它操作参加官方SDK文档API)。说明:这里叮当哥使用的是生成临时密钥的方式(好处多多哦)第一步:创建Maven工程并导入相关坐标<!--... 查看详情

腾讯云cos,上传,下载,删除,在线查看等操作(代码片段)

研究了下文档,学会的先记录下。首先新建工具类COSUtil。配置账号密码、存储桶以生成客户端(每个方法下都需要配置,为了代码简洁后面的方法会省略):1StringsecretId="root";                       ... 查看详情

前端上传文件到腾讯云(代码片段)

...ecretId:‘腾讯云密钥ID值‘,SecretKey:‘腾讯云密钥key值‘)//上传文件cos.putObject(Bucket:‘‘,//存储桶名称Region:‘‘,//地域名字Key:name,//文件名字StorgeClass:‘STANDARD‘,//存储方式Body:selectedFile,//上传对象onProgress:function(progressData)console.log... 查看详情

使用宝塔面板如何自动备份数据库和网站代码(代码片段)

...章来自于某框架的知名苦工仙士可的提问,你是怎么定时备份数据库的?基础操作是:宝塔自带的定时任务当中就有备份数据库和网站代码啊  然后就直接选择了备份到服务器磁盘把备份文件放在服务器上也是不太保险,... 查看详情

阿里云oss和腾讯云cos互相迁移(代码片段)

...里、腾讯的帮助文档中提供的迁移工具测试迁移对象存储数据。一、腾讯to阿里文档链接:https://help.aliyun.com/document_detail/56990.html?spm=5176.7851628.6.1079.UqBdXKOssImport工具可以将本地、其它云存储的数据迁移到OSS,它有以下特点:支持... 查看详情

上传文件到腾讯云存储桶(代码片段)

上传文件到腾讯云存储桶一,配置腾讯云Cos流程图第一步,注册腾讯云账号第二步,选择帐户填写个人信息第三步扫码授权手机端授权第四步点击免费产品五步选择对象存储Cos六步开通服务七步创建存储桶设置cors规... 查看详情

上传文件到腾讯云存储桶(代码片段)

上传文件到腾讯云存储桶一,配置腾讯云Cos流程图第一步,注册腾讯云账号第二步,选择帐户填写个人信息第三步扫码授权手机端授权第四步点击免费产品五步选择对象存储Cos六步开通服务七步创建存储桶设置cors规... 查看详情

上传图片到腾讯云(代码片段)

1、composer安装扩展"qcloud/cos-sdk-v5":"1.*"2、代码,多图<?phpnamespaceAppLibrarylib;useQcloudCosClient;classCosLibconstREGION=‘test‘;constAPP_ID=‘test‘;constSECRET_ID=‘test‘;constSECRET_KEY=‘test‘;const 查看详情

一分钟开始持续集成之旅系列之:vue+腾讯云cos上传部署(代码片段)

前言随着Web应用的发展,运行在浏览器端的Web应用能够承担更多且更复杂的业务交互需求,前后端分离模式得以流行,并催生了如Vue、React等单页应用框架。这些框架简化了开发流程,但对于Web应用的部署并没有统一的解决方案... 查看详情

本地文件上传,腾讯云(代码片段)

...表单,进度监控(如果必要)3、将获取的图片url上传到数据库,其他处理,放大效果等本地上传控件处理表单美化上传控件一般需要美化,比如可以用label标签,显示样式,把input标签做透明处理,宽高设置为0,outline:none,接着... 查看详情

如何在typecho中使用腾讯云对象存储cos?

...件链接,谢谢插件没有,最简单的应用就是将静态的资源上传到cos,比如将博客代码整个放到cos,开启静态网站,这是一种。还有一种就是将某些图片等上传到cos,在html代码中引用cos地址。参考技术A安装插件。Typecho腾讯COS插件... 查看详情

腾讯云cos封装(代码片段)

publicclassCosUtilint_appId=xxxxx;string_secretId="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";string_secretKey="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";string_bucketName="test";publicCosUtil()stringcosAppId=System. 查看详情

利用腾讯云cos云对象存储定时远程备份网站

版权声明:本文由张戈  原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/942851001487125915来源:腾云阁 https://www.qcloud.com/community 一、优点分析内网传输:和阿里云OSS一样,腾讯云COS同... 查看详情

腾讯云mysql备份本地恢复(代码片段)

逻辑备份下载文件wget-chttps://mysql-database-backup-bj-1256569818.cos.ap-be1eb-86cc-6c92bf479dfd%2Fdata%2Fautomatic-deam-Otest1_full_sql.xb解包文件xbstream-p20-v-x<test1_full_sql.xb安装解压工具#下载工具wget-d--user-agent="Mozilla/5.0(WindowsNTx.y;rv:10.0)Gecko/20100101F... 查看详情

使用腾讯云cos对象存储(详细流程)(代码片段)

一、开通COS对象存储 二、创建存储桶 基本信息所属地域:请选择与您业务(或用户数量)相对集中的物理区域所对应的COS地域,设置后不可修改。地域的更多信息请参见 地域和访问域名。名称:请输入自... 查看详情

使用elk分析腾讯云clb日志(代码片段)

缘起最近在使用腾讯云,想对访问日志进行收集与分析,发现CLB(负责均衡)日志只能保存到COS上面,而且是每个CLB没小时压发送个gz压缩包到COS。实现方式CLB配置日志存储到COS,Filebeat客户端CVM安装cosfs挂载COS,并配置Filebeat输... 查看详情