mysql自动备份并上传至git仓库

自动备份

备份需求

数据库备份的重要性再怎么强调也不为过。当你的操作出现差错,但又因为没有作备份导致数据无法还原时,你就能体会到“万念俱灰”的心情了。

数据库备份有多种形式,本文以我的个人网站数据库备份为例。

需求如下:

  • 每天凌晨自动备份
  • 将备份的文件自动上传至码云的个人私有仓库

实现方式

实现方式很简单:

  • 码云上新建私有仓库mysqlBackUp
  • 服务器与码云建立SSH key的信任关系
  • 通过crontab定时执行备份脚本

备份脚本mysqldump.sh

#!/bin/bash
cd ~/backup
message=`date "+%Y%m%d"`
mysqldump -uUsername -pPassword databaseName > 'databaseName.sql'
git add -A
git commit -m "${message}"
git push         

定时任务:

0 03 * * * sh /home/wwwroot/mysqldump.sh # 数据库备份

通过以上设置,每天凌晨三点就会自动备份数据并推送到git仓库,以后就可以通过git的版本记录查看各个历史版本。再也不用担心丢数据了...

我的网站原文

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开源项目

不要再问怎么把项目从 GitHub 搬到码云了!

壹 项目名要求: 只允许字母、数字或者下划线(_)、中划线(-)、英文句号(.),必须以字母开头。 不符合项目名要求会导致无法导入。 贰 如何将 GitHu...

9616
来自专栏刘望舒

React Native入门(一)环境搭建与Hello World

前言 目前关于React Native的教程很多,官方文档写的也不错,但是感觉大部分教程写的不是很清楚,导致我各种碰壁。因此我来写一个简洁的教程。本篇文章基于...

1835
来自专栏SnailTyan

Linux的/bin、/sbin、/usr/sbin、/usr/bin、/usr/local/bin、/usr/local/sbin

1、Linux的/bin、/sbin、/usr/sbin、/usr/bin、/usr/local/bin、/usr/local/sbin /bin bin为...

1949
来自专栏繁花云

[技巧]腾讯云服务器自助更换IP教程(无需任何费用)

选择确定转换,这时我们的IP已经转换成弹性IP(EIP)了,接着我们进入EIP控制继续操作:

3070
来自专栏gaoqin31

linux挂载windows共享目录

3.  进入控制面板->网络和共享中心->更改高级共享设置->密码保护的共享->关闭密码保护共享

1172
来自专栏前端小叙

git statsh命令报错解决

git stash命令主要用于当在一个分支的开发工作未完成,却又要切换到另外一个分支进行开发的时候,除了commit原分支的代码改动的方法外,提供暂存代码的方式...

2888
来自专栏逸鹏说道

Hyper-V无法文件拖拽解决方案~~~这次用一个取巧的方法架设一个FTP来访问某个磁盘,并方便的读写文件

异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 服务器相关的知识点:http://www...

34813
来自专栏Python与爬虫

爬虫入门到精通-环境的搭建

本文章属于爬虫入门到精通系统教程第三讲 IDE的安装 IDE我用的是VS code,也用过pycharm(但是电脑配置不行,比较卡) VScode安装教程...

4397
来自专栏Zachary46

Android使用Jenkins自动化构建测试打包apk

Jenkins这东西搭建起来真是一点也不省心啊,看着别人的教程摸着石头过河,配置的东西有点多啊,稍有不慎,就构建不成功啦!即使步骤跟别人一样也会报各种乱七八糟的...

1092
来自专栏代码散人

利用XCode Targets创建多scheme的iOS项目

在我们的开发iOS的时候,通常会遇到一个项目打包成多个环境的问题,也会遇到一套代码打包成多个项目的问题,最常用的做法是写一个配置文件,在打包的时候修改一下配置文...

804

扫码关注云+社区