服務器備份攻略

原文連接:http://www.cnblogs.com/ma6174/archive/2012/07/31/2616498.html
html

本文主要講解如何用git備份服務器數據mysql

服務器端:

1.若是沒有git,先安裝:sudo apt-get install git-alllinux

2.假如要備份文件夾~/backup,先初始化gitgit

cd ~/backup  
git init
git add .

git commit -m "first commit" sql

3.寫一個備份腳本,vi ~/backup.sh ,內容以下數據庫

cd ~/ backup
git add .

git commit -m "back up" bash

4.讓腳本按期執行,假設咱們天天23:30執行備份腳本,能夠加入Linux任務計劃服務器

在終端輸入命令:crontab -e
ssh

在最後一行加入如下內容:fetch

30 23 * * * ~/backup.sh

 

 

這樣服務器就會在23:30自動備份文件夾。僅僅在服務器上備份是不夠的,有必要把服務器上的數據再備份到本地計算機上

本地 

1.設置本機與服務器免輸密碼自動登陸,能夠參考這裏: http://www.cnblogs.com/ma6174/archive/2012/05/26/2519458.html

2.首次用git來clone服務器數據(git裝了嗎?):

  git clone ssh://[username]@[ipaddress]:[port]/home/[username]/backup/.git 

3.寫一個自動獲取遠程更新的腳本vi ~/backup.sh:

#!/bin/bash
cd ~/ backup/
git fetch origin

git merge origin/master 

4.把腳本加入linux任務計劃。(參考服務器端配置第4條)

 

總結:

1.上面僅僅是備份一個文件夾(好比網站文件夾),若是備份數據庫能夠用命令將數據庫導入到文件夾裏面,例如mysql能夠用這條命令

mysqldump --all-databases -u[username] -p[password] >~/ backup/database.sql

而後將這條命令放到剛纔的自動執行腳本就能按期備份數據庫了

2.按期查看git備份日誌:git log ,檢查是否按時備份,備份是否正常

3.用git備份的優勢是能夠進行版本控制,能夠查看版本更新,而且能夠恢復到之前任何一個版本,有關git的相關知識能夠參考這裏:

http://note.sdo.com/u/ma6174/c/M5cEN~k14xk0LX0TQ000Ag
相關文章
相關標籤/搜索