一些简单的备份恢复以及清理脚本
  HL7exJhKg9j2 2023年11月30日 61 0

一些简单的备份恢复以及清理脚本


背景

想实现一些比较重要文件的备份工作.
想法是通过 minio 备份数据库.
通过rsync的方式备份类似于 maven这样的文件存储内容.

备份完成之后通过 find 方式清理磁盘避免磁盘爆掉.

minio备份的方式方法

now=`date +%Y%m%d%H`
export AWS_ACCESS_KEY_ID=minioadmin
export AWS_SECRET_ACCESS_KEY=minioadmin
ssh root@192.168.254.216  "mkdir  -p /minio/data/tidb_dev_${now}"
time /root/.tiup/components/br/v6.5.3/br  backup full  -f '*.*'  -f '!information_schema.*'   -f '!emetrics_schema.*'    --pd "192.168.254.201:2379" --storage "s3://tidb_dev_${now}" --s3.endpoint "http://192.168.254.216:9000"  --send-credentials-to-tikv=true  --log-file backupfull.log

# 注意相关思路为:

设置minio的连接信息
登录到minio所在机器创建一个空目录
注意 创建空目录的同时会在 minio服务器里面创建一个bucket
然后使用br 的命令进行备份呢.

rsync的备份方式方法

now=`date +%Y%m%d`
time rsync -rpt  /data/nexus-data root@192.168.254.216:/data/nexus_${now}

方法也比较简单.  通过rsync 的方式将文件备份走.

清理minio备份的思路

删除 三到五天前的文件

find /minio/data  -maxdepth 1 ! -path "/minio/data/.minio.sys" -mtime +5  -exec rm -rf {} \;

minio 需要避免删除一些系统文件.

rsync的处理

有一个思路是 通过mv 文件明的方式
然后基于rsync 的方式进行文件差量备份 避免产品影响较大. 

old=`date -d -3days  +%Y%m%d`
echo $old
now=`date -d +1days  +%Y%m%d`
echo $now
mv /data/nexus_${old} /data/nexus_${now}

这样理论上可以避免大量的网络流量带宽的使用.




【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月30日 0

暂无评论

推荐阅读
HL7exJhKg9j2