git自动化备份和恢复数据例子

git是目前十分流行的分布式项目版本管理系统,较之svn有很大的优势,昨天就想着应该好好利用一下git,于是就想着可以利用git的版本回退等做一个简单的项目自动备份和恢复功能。这样既可以使用git做项目的版本管理,又可以利用git做备份。这样项目进行迁移,备份等等都是非常方便的。
功能和实现的确非常之简单,但是这里有这样几个前提条件,首先就是需要有自己的linux服务器,会一些简单的shell编程,最后要熟悉git的一些相关命令。
github是目前git的一个十分流行的远程库,我的项目因为都是个人的,并且没有什么商业或安全性质,所以就使用了github做远程库,如果对这方面有要求的,可以给github交一些保护费,使用其私有的保护版本库,或者,在自己的服务器,搭建一个远程库服务,也很简单,网上git的资料很多。https://github.com/zhangcunchao,这是我的第一个github账号,我会陆续的将自己的一些开发项目,学习所得放到上面进行管理,因为这样是非常方便的。
实现的步骤非常简单,
首先,在自己的服务器安装git,centos使用yum install git即可

这个教程不长,基本看下来,git的使用基本没有问题了
然后,我们在github或者自己的远程版本库,创建版本库,将本地项目git库,与远程库同步,
最后,shell脚本,做定时任务,进行git push同步远程
因为我没有日志分析脚本和数据备份脚本,会对项目做更改,所以每天我会自动同步一次,即备份一次项目到github
所以我将其放到了我数据备份的脚本中

 代码如下 复制代码

#!/bin/sh
user='xxxx'
pwd='xxxx'
mysqldump -u$user -p$pwd --opt xxx> xxxxx.sql
mysqldump -u$user -p$pwd --opt xxx> xxxx.sql
mysqldump -u$user -p$pwd --opt xxx> xxxx.sql
#git push
cd /xxx/xxx/www.521php.com
git add . 1>/dev/null 2>&1
git commit -m "everyday push" 1>/dev/null 2>&1
git push 1>/dev/null 2>&1
 
cd /xxx/xxx/love.521php.com
git add . 1>/dev/null 2>&1
git commit -m "everyday push" 1>/dev/null 2>&1
git push 1>/dev/null 2>&1
exit 0

如果你需要恢复某个版本,只需要checkout一个远程库版本即可
git这种分布式的版本管理系统和svn还是有很多差别的,有很多优点的。这个备份使用ssh协议,速度是非常快的。git还有很多优点,希望大家能学习使用一下吧。
ps:为了尽量安全一下,你可以设置.gitignore来屏蔽一些同步目录的,这样你可以在里面将敏感的配置文件屏蔽,并且可以用一个目录来专门存放。

时间: 2024-08-05 13:04:49

git自动化备份和恢复数据例子的相关文章

备份和恢复数据的4个最佳实践

保护和访问企业数据,对于每个或大或小的现代企业来说,都是需要优先考虑一个问题.根据调查机构的研究,2016年的数据泄露事件与2015年同期相比增长了16%.这一上升趋势一直在发展变化.随着数据泄露事件每年的上涨,保存不可替代的数据应该是企业的一个优先事项.几乎每个人都知道,有必要采取安全措施来保护敏感数据,这是必不可少的措施.然而,许多组织无法备份他们的信息,并保护那些与原来的数据相同的安全级别的数据备份.没有备份,企业将会争先恐后地恢复重要的数据,保护消费者和客户的数据,并防止数据泄露或数据丢

Linux下实现MySQL数据备份和恢复的命令使用全攻略_Mysql

为了保障数据的安全,需要定期对数据进行备份.备份的方式有很多种,效果也不一样.一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复.从而将损失降到最低.下面我们来了解一下MySQL常见的有三种备份恢复方式: 1.利用Mysqldump+二进制日志实现备份 2.利用LVM快照+二进制日志实现备份 3.使用Xtrabackup备份 一:实验环境介绍: 系统介绍:CentOS6.4_X64 数据库版本:mysql-5.5.33 二:基于Mysqldump命令实现备份恢复 2.1.思路概念

Oracle数据库的备份及恢复策略研究

oracle|备份|策略|恢复|数据|数据库     摘 要 恢复丢失的数据库文件在很大程度上取决于所采用的备份策略.本文从恢复的灵活性出发,对Oracle8数据库的备份及恢复策略进行了探讨,并给出了Windows 2000环境下使备份过程自动化的脚本文件的项目开发实例. 关键词 Oracle 数据库 备份 恢复 引言 随着信息系统在各种商务活动中重要性的不断增强,维护系统数据的可用性已成为当前一个十分重要的课题.为了有效地保持健康的信息系统,必须采取一定的措施防止在由介质.操作系统.软件和其它

使用这些去重加密工具来备份你的数据

无论是体积还是价值,数据都在不断增长.快速而可靠地备份和恢复数据正变得越来越重要.社会已经适应了技术的广泛使用,并懂得了如何依靠电脑和移动设备,但很少有人能够面对丢失重要数据的现实.在遭受数据损失的公司中,30% 的公司将在一年内损失一半市值,70% 的公司将在五年内停止交易.这更加凸显了数据的价值. 随着数据在体积上的增长,提高存储利用率尤为重要.从计算机的角度说,数据去重是一种特别的数据压缩技术,因为它可以消除重复数据的拷贝,所以这个技术可以提高存储利用率. 数据并不仅仅只有其创造者感兴趣.

Oracle数据库的备份及恢复策略研究_oracle

正在看的ORACLE教程是:Oracle数据库的备份及恢复策略研究. 摘 要 恢复丢失的数据库文件在很大程度上取决于所采用的备份策略.本文从恢复的灵活性出发,对Oracle8数据库的备份及恢复策略进行了探讨,并给出了Windows 2000环境下使备份过程自动化的脚本文件的项目开发实例. 关键词 Oracle 数据库 备份 恢复 引言 随着信息系统在各种商务活动中重要性的不断增强,维护系统数据的可用性已成为当前一个十分重要的课题.为了有效地保持健康的信息系统,必须采取一定的措施防止在由介质.操作

阿里云MongoDB Sharding备份和恢复服务深度解密

大数据时代,数据保存的重要性不言而喻.在数据保存过程中,数据的备份更是一个值得深入研究的课题.在3月12日下午举行的MongoDB杭州用户交流会上,阿里云技术专家明俨分享了MongoDB Sharding备份和恢复的技术解密.他通过介绍不同的备份方法及备份的主要问题等方面来阐述阿里云在MongoDB Sharding备份和恢复方面所做的工作. 在"MongoDB Sharding杭州用户交流会"上,阿里云技术专家明俨分享了MongoDB Sharding备份和恢复的技术解密.他通过介绍

SQL SERVER2000数据库备份和恢复存储过程(加强版本)

server|备份|存储过程|恢复|数据|数据库 SQL SERVER2000数据库备份和恢复存储过程(加强版本) 我自己写的2个过程和一个函数,用于SQL SERVER2000数据库备份和恢复拿出来和大家交流一下,过程和函数的详细说明在代码中谢谢 /*备份数据库的过程*/if exists( select * from sysobjects  where name='pr_backup_db' and xtype='p'          )begin drop proc pr_backup_

C#可定制的数据库备份和恢复程序

备份|程序|恢复|数据|数据库 可定制的数据库备份和恢复程序 tashanzhishi [原作] 关键字 数据库 备份 恢复 出处 在我们做数据库系统的程序时,经常需要为客户做一个数据库的备份和恢复程序,特别是对于一些非专业的数据库用户,这个程序更是必不可少,而且操作必需足够简单.因为在很多系统中,数据库的备份恢复功能都是相近的,因此,我们最好做一个通用的数据库备份恢复程序,这样就不必每个系统都开发一套了. 要开发这样一套系统,我个人认为应该满足以下要求: 1. 备份恢复操作应该有历史记录(必需

MongoDB无法启动,如何恢复数据?

近日有 MongoDB 用户遇到一个问题,使用 Wiredtiger 存储引擎的 MongoDB 无法启动,咨询我数据能否恢复回来,能恢复多少是多少 ... 问题出现的场景据用户描述是「mongod磁盘写满了,导致进程 crash」,尝试重新启动,结果 wiredtiger 报错,错误信息类似如下,类似的问题 mongodb jira 上也有人提过,可以参考 SERVER-26924,说明此时 MongoDB 数据文件已经损坏. 2017-03-28T22:06:05.315-0500 W -