定时备份mysql数据到OSS

OSS备份mysql数据

下载OSS命令行工具ossutil到本地系统
wget https://gosspublic.alicdn.com/ossutil/1.7.15/ossutil64
chmod +x ossutil64  # 授权
sudo mv ossutil64 /bin/ # 移动到Path或者创建软连接ln -s /usr/local/src/ossutil64/ossutil64 /usr/local/bin/ossutil64

其他功能参考官方文档https://www.alibabacloud.com/help/zh/object-storage-service/latest/6f7f72#concept-cnr-3d4-vdb

编写shell脚本
#!/bin/sh 
# 备份文件临时目录
mysql_dump_path=/var/dbbackup/

# oss配置
oss_endpoint="Endpoint" 
oss_bucket="bucket名称" 
oss_accesskeyid="AccessKeyId" 
oss_accesskeysecret="AccessKeySecret" 
backup_name=`date +%Y%m%d%H%M%S`
cd ${mysql_dump_path} 

# 使用 mysqldump 备份整个数据库到临时文件夹中
# --ignore-table忽略掉表,需要带上database.
docker exec root-mysql-1 sh -c 'mysqldump -uroot -p"$MYSQL_ROOT_PASSWORD" --all-databases' > ${backup_name}.sql

# 打包/pack 
tar zcf ${backup_name}.tar.gz ${backup_name}.sql 
rm -f ${backup_name}.sql 

# 备份到OSS
ossutil64 cp ${backup_name}.tar.gz oss://${oss_bucket}/mysql/backup/${backup_name}.tar.gz -f -e ${oss_endpoint} -i ${oss_accesskeyid} -k ${oss_accesskeysecret} 
rm -f ${backup_name}.tar.gz 
echo "备份完成"

sudo chmod +x /var/dbbackup/dbbackup.sh
加入cron计划任务
vim /etc/crontab
0 2 * * * root /var/dbbackup/dbbackup.sh  # 每天凌晨两点执行一次
systemctl reload crond.service # 重新载入配置
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
数据备份OSS可以分为以下几个步骤: 1. 准备OSS账号和bucket 首先,您需要在阿里云官网上注册账号,并创建一个OSS bucket。在创建bucket时,请注意选择您的数据中心位置,以确保数据备份的速度和稳定性。 2. 安装OSS SDK 您需要在您的服务器上安装OSS SDK,以便您可以使用OSS API来上传和下载文件。OSS SDK的安装方法与语言有关,您可以在阿里云官网上查找相应的安装指南。 3. 编写备份脚本 您可以使用任何一种编程语言来编写备份脚本,但是最好选择一种与您的服务器操作系统兼容的语言。例如,如果您的服务器运行的是Linux系统,则可以使用Shell脚本来编写备份脚本。 在备份脚本中,您需要指定要备份数据库名称、备份文件的名称、OSS的AccessKey和SecretKey等信息。您还需要使用OSS SDK中的API将备份文件上传到OSS。 以下是一个备份MySQL数据库OSS的Shell脚本示例: ``` #!/bin/bash # 数据库信息 DB_NAME="your_db_name" DB_USER="your_db_user" DB_PASS="your_db_password" # 备份文件名 BACKUP_FILE="your_backup_file_name.sql" # OSS信息 OSS_ENDPOINT="your_oss_endpoint" OSS_BUCKET="your_oss_bucket" OSS_ACCESS_KEY="your_oss_access_key" OSS_SECRET_KEY="your_oss_secret_key" # 备份数据库 mysqldump -u ${DB_USER} -p${DB_PASS} ${DB_NAME} > ${BACKUP_FILE} # 上传备份文件到OSS ossutil cp ${BACKUP_FILE} oss://${OSS_BUCKET}/ --endpoint ${OSS_ENDPOINT} --access-key-id ${OSS_ACCESS_KEY} --access-key-secret ${OSS_SECRET_KEY} ``` 4. 设置定时任务 为了确保数据备份的及时性和稳定性,您需要将备份脚本设置为定时任务。在Linux系统中,您可以使用crontab命令来设置定时任务。例如,您可以将备份脚本设置为每天凌晨2点执行一次: ``` 0 2 * * * /path/to/your/backup/script.sh ``` 以上就是将数据备份OSS的步骤。需要注意的是,数据备份是非常重要的,建议您将备份文件保存在多个地方,以应对各种意外情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值