MySql 5.7.40备份到腾讯云cos+从cos恢复

Posted 程序员大宝(coder-dabao)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql 5.7.40备份到腾讯云cos+从cos恢复相关的知识,希望对你有一定的参考价值。

1 备份

1.1 安装coscli

# wget https://github.com/tencentyun/coscli/releases/download/v0.12.0-beta/coscli-linux
# mv coscli-linux /usr/bin/coscli
# chmod 755 /usr/bin/coscli
# coscli --version

如果github慢可以使用国内镜像:

wget https://cosbrowser.cloud.tencent.com/software/coscli/coscli-linux

1.2 准备cos存储桶和coscli账号

创建data存储桶,并且创建apps文件夹,apps下面再创建mysql文件夹。

在存储桶中,设置“基础配置/生命周期”中,设置备份过期时间。(这里设置,30天后,前缀为backup/的文件将会自动删除)

创建coscli子账号

运行coscli,首次运行coscli,根据提示填写相关信息,其中的session token不填。

上传

# coscli cp /tmp/a.txt cos://data-2023007/apps/mysql/a.txt

下载

# coscli cp cos://data-2023007/apps/mysql/a.txt /tmp/a.txt

1.3 创建mysqldump备份用户

这里内网用户才有导出权限

mysql> grant select,trigger,show view,lock tables,process,event,reload,replication client on *.* to 'dumper'@'10.0.%' IDENTIFIED BY 'm@xxxxxxx';
mysql> flush privileges;

1.4 备份脚本

vim mysql_backup.sh

#!/bin/bash

function _backup()

  local databaseName=$1
  local nowDate=$2
  local sqlName=$1.$2.sql
  local tarGzName=$sqlName.tar.gz

  cd /home/admin/backup

  mysqldump -udumper -pxxxbxx -h 10.0.116.115 -P 3306 --databases $databaseName > $sqlName

  tar -czf $tarGzName $sqlName

  coscli cp $tarGzName cos://data-2022/apps/mysql/$databaseName/backup/$tarGzName

  rm -f $tarGzName $sqlName


function run()
  _backup user `date '+%Y%m%d'`

  _backup logs `date '+%Y%m%d'`


run

1.5 备份定时任务

chmod a+x mysql_backup.sh给脚本添加运行权限,运行crontab -e设置备份脚本每天运行一次

30 3 * * * sh /home/admin/backup/mysql_backup.sh >> /home/admin/backup/run.log 2>&1 &

2 从cos恢复

2.1 从cos下载文件

# coscli cp cos://data-202207/apps/mysql/user/backup/user.`date '+%Y%m%d'`.sql.tar.gz /tmp/user.`date '+%Y%m%d'`.sql.tar.gz

2.2 解压

# tar -zxvf user.20230115.sql.tar.gz

2.2 导入

将sql文件导入到数据库

# mysql -uroot -pxxxxxxh -h 127.0.0.1 -P 3306 < /home/admin/backup/user.20230115.sql

参考文档

1,《自动备份本地文件、数据库到COS中》:https://cloud.tencent.com/developer/article/1951657

2,《Linux 设置定时任务crontab来自动备份mysql数据到COS上》:https://blog.csdn.net/worldmakewayfordream/article/details/90209793

3,《COSCLI下载与安装配置》:https://cloud.tencent.com/document/product/436/63144

以上是关于MySql 5.7.40备份到腾讯云cos+从cos恢复的主要内容,如果未能解决你的问题,请参考以下文章

MySql 5.7.40备份到腾讯云cos+从cos恢复

备份数据上传腾讯云COS

腾讯云对象存储COS获Veritas认证,数据安全能力再升级

如何使用rclone从AWS S3迁移到IBM COS - part 2 - 同步腾讯云对象存储

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

腾讯云MySQL备份本地恢复