linux下簡單的mysql/web備份小實例
這個是菜鳥級的運維的mysql的備份小腳本,在這里寫出來一是為了做筆記,二是認識一下兩個小工具mysqldump/pdumpfs
第一部分是mysql數據的備份
[root@localhost ~]# mkdir -p /usr2/backup/mysql
[root@localhost ~]# vi mysqldump.sh
#!/bin/bash
#author XXX time 2011-10-17
#the backup of localhost mysql data
X=`date +%Y%m%d`
M=/usr/local/mysql/bin
B=/usr2/backup/mysql
$M/mysqldump -uroot --all-databases > $B/$X.sql //本機的mysql為設置登錄密碼,如果設置密碼需要改寫這句話($M/mysqldump -uroot -ppassword --all-databases > $B/$X.sql)
tar zcvf $B/$X.tar.gz $B/$X.sql
rm -rf $B/$X.sql
[root@localhost ~]# chmod a+x mysqldump.sh
[root@localhost ~]# ./mysqldump.sh
tar: Removing leading `/' from member names
/usr2/backup/mysql/20111015.sql
以上這個腳本可以加入cron的計劃任務中,在定時的時刻執行備份的動作!
[root@localhost ~]# echo " * * * * * root path/XX.sh & >/dev/null" >> /etc/crontab
至于災難恢復的語句可以這么寫
[root@localhost ~]# /usr/local/mysql/bin/mysqldump -uroot -ppassword <$path/`date +%Y%m%d`
每周的備份數據量是很大的,下邊的那句話可以寫入cron.weekly來清除重疊的數據
[root@localhost ~]# find /usr2/backup/mysql -mtime +6 -exec rm {}\;
第二部分是web數據的備份
這里采用一個新發現的小工具pdumpfs
[root@localhost ~]# yum -y install ruby (安裝需要的套件包)
[root@localhost ~]# wget
[root@localhost ~]# rpm -ivh pdumpfs-1.3-1.rh9.rf.i386.rpm
[root@localhost web]# mkdir /usr2/backup/web
[root@localhost ~]# vim web.sh
#!/bin/bash
#author XXX time 2011-10-17
pdumpfs /var/www /usr2/backup/web >/usr2/backup/web/message.log 2>/usr2/backup/web/error.log
[root@localhost ~]# chmod a+x web.sh
同時可以把這個小腳本放入cron的計劃任務中定期的執行
[root@localhost ~]# echo " * * * * * root path/XX.sh & >/dev/null" >> /etc/crontab
[root@localhost ~]# ls /usr2/backup/web/ (哲就是備份的數據部分)
2011 error.log latest message.log
第三部分是ssh的異地的無密碼復制的設置
兩臺linux主機,一臺ip:192.168.192(也就是服務器本機)另一臺是192.168.1.193(作為遠程備份主機)
首先在遠程備份主機上的操作
[root@localhost ~]# ssh-keygen (生成公匙)
[root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa 192.168.1.192(給服務器送去,這步要輸入192的密碼)
[root@localhost ~]# scp 192.168.1.192:/usr2/backup/mysql/20111015.tar.gz .(這里顯示的是可以不使用密碼可以直接的從服務器上拷貝東西了,也就是復制的過程。把這里換成腳本就能實現很多的操作)
總結:備份的主要方式有,完整備份,增量備份,差分備份、還有本地和異地備份之分!這里只是一個文件備份的小實例,期待進一步的學習!
關鍵字:服務器、增量備份、mysql數據、web數據
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解