使用ossutil定时备份自建mysql数据库到阿里云OSS

栏目: 数据库 · Mysql · 发布时间: 7年前

内容简介:在阿里云ECS上搭建了一个小网站,用的mysql,数据库也是在ECS上安装的,这就涉及到一个数据库备份的问题,当然是定时自动备份才好。阿里云OSS提供了一种安全可靠的存储,是理想的备份存储。于是搞起来。思路:我这里是64位的linux,其它版本见说明:

在阿里云ECS上搭建了一个小网站,用的mysql,数据库也是在ECS上安装的,这就涉及到一个数据库备份的问题,当然是定时自动备份才好。阿里云OSS提供了一种安全可靠的存储,是理想的备份存储。于是搞起来。

思路:

  • 备份使用 mysql 自带的mysqldump
  • 搞个 shell 脚本定时执行
  • 使用阿里云提供的ossutil来上传文件

安装ossutil

我这里是64位的linux,其它版本见说明: https://help.aliyun.com/document_detail/50452.html

wget http://gosspublic.alicdn.com/ossutil/1.4.1/ossutil64

然后复制到/usr/local/bin。

cp /root/ossutil64 /usr/local/bin

然后运行 ossutil64 看看是不是安装成功了。

开通OSS

这个是有管理界面的,看阿里云的文档吧。

https://help.aliyun.com/document_detail/31884.html

创建一个bucket,名字自己随便起。

https://help.aliyun.com/document_detail/31885.html

阿里云账号权限很大,直接使用不安全,最好给OSS操作单独创建个子账号:

https://help.aliyun.com/document_detail/31867.html

编写脚本

#!/bin/sh
base_mysql_path=mysql根目录
mysql_dump_path=mysql备份文件的临时目录
#mysql-config
mysql_user="数据库用户名"
mysql_pass="数据库密码"
#oss-config
oss_endpoint="阿里云OSS Endpoint"
oss_bucket="阿里云OSS Bucket名字"
oss_accesskeyid="阿里云OSS AccessKeyId"
oss_accesskeysecret="阿里云OSS AccessKeySecret"
backup_name=`date +%Y%m%d%H%M%S`
cd ${mysql_dump_path}
#mysqldump
${base_mysql_path}bin/mysqldump -u${mysql_user} -p${mysql_pass} --all-databases > ${backup_name}.sql
#pack
tar zcf ${backup_name}.tar.gz ${backup_name}.sql
rm -f ${backup_name}.sql
#backup to 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 "备份完成"

请将上边文件中汉字的部分替换称自己的,然后将这个文件保存为dobak.sh,上传到/usr/local/mysql/backup。

注意文件的格式需要为UNIX格式,可以使用Notepad++,在“编辑”->“文档格式转换”中确认。

加入计划任务

编辑/etc/crontab,加入下边这句:

05 1 * * * root /usr/local/mysql/backup/dobak.sh

这句的意思是每天1点05分执行备份脚本,时间可以自己改,具体了解下定时器的配置。

然后重新加载cron配置:

service crond reload

然后就坐等备份顺利执行吧。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python语言程序设计

Python语言程序设计

[美]梁勇(Lang Y. D.) / 李娜 / 机械工业出版社 / 2015-4 / 79.00元

本书采用“问题驱动”、“基础先行”和“实例和实践相结合”的方式,讲述如何使用Python语言进行程序设计。本书首先介绍Python程序设计的基本概念,接着介绍面向对象程序设计方法,最后介绍算法与数据结构方面的内容。为了帮助学生更好地掌握相关知识,本书每章都包括以下模块:学习目标,引言,关键点,检查点,问题,本章总结,测试题,编程题,注意、提示和警告。 本书可以作为高等院校计算机及相关专业Py......一起来看看 《Python语言程序设计》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具