程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 自動備份mysql數據庫並發送到Email方法

自動備份mysql數據庫並發送到Email方法

編輯:MySQL綜合教程

自動備份mysql數據庫並發送到Email方法


一個博客,一個網站最重要的就是數據庫,所以經常備份數據是必須的.盡管 WordPress 有定時備份數據的插件,但只能備份當前的博客,不夠靈活.適合個人小小博客,對於一些網站來說,就不適合了.現在很多人都擁有多個網站,showfom 同學就有幾個網站.每個網站都裝個插件就比較麻煩了.況且不是每個網站都是WordPress 的 .

所以寫了個自動備份mysql數據庫的腳本,再加上gmail這個G級郵箱,備份多少數據都可以了...下面是代碼:

 

mysqldump -uuser -ppassword --databases db1 db2 db3 > /home/website/backups/databackup.sql
tar zcf /home/website/backups/databackup.sql.tar.gz /home/website/backups/
echo "主題:數據庫備份" | mutt -a /home/website/backups/databackup.sql.tar.gz -s "內容:數據庫備份" [email protected]
rm -r /home/website/backups/*

 

將上面的代碼保存為automysqlbackup.sh
然後利用crontab 實現動備份,在ssh下,

crontab -e

輸入以下內容:

00 00 * * * /home/website/automysqlbackup.sh

這樣就實現了每天00:00自動備份mysql數據庫並發送到Email

簡單的說明下吧.
第一句是一次性備份多個數據庫,這個要你用root權限的用戶才可以的..-u後面的是數據庫用戶名 -p後面的是數據庫密碼 無需空格 db1 db2 db3為你需要備份的數據庫名.
如果你的數據庫用戶名沒有root這個權限,可以改為這樣

mysqldump -uuser -ppassword db1 > /home/website/backups/db1.sql
mysqldump -uuser -ppassword db2 > /home/website/backups/db1.sql
mysqldump -uuser -ppassword db3 > /home/website/backups/db1.sql

第二句是將 backups 文件夾裡面的數據文件壓縮為文件名:databackup.sql.tar.gz

第三句是將壓縮了的數據庫文件發送到指定的郵箱.....

其中的主題:數據庫備份 ,就是郵件的主題, 內容:數據庫備份,就是郵件的內用,

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved