自動備份mysql資料庫並發送到Email方法,mysqlemail

來源:互聯網
上載者:User

自動備份mysql資料庫並發送到Email方法,mysqlemail

一個部落格,一個網站最重要的就是資料庫,所以經常備份資料是必須的.儘管 WordPress 有定時備份資料的外掛程式,但只能備份當前的部落格,不夠靈活.適合個人小小部落格,對於一些網站來說,就不適合了.現在很多人都擁有多個網站,showfom 同學就有幾個網站.每個網站都裝個外掛程式就比較麻煩了.況且不是每個網站都是WordPress 的 .

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

mysqldump -uuser -ppassword --databases db1 db2 db3 > /home/website/backups/databackup.sqltar zcf /home/website/backups/databackup.sql.tar.gz /home/website/backups/echo "主題:Database Backup" | mutt -a /home/website/backups/databackup.sql.tar.gz -s "內容:Database Backup" www@gmail.comrm -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.sqlmysqldump -uuser -ppassword db2 > /home/website/backups/db1.sqlmysqldump -uuser -ppassword db3 > /home/website/backups/db1.sql

第二句是將 backups 檔案夾裡面的資料檔案壓縮為檔案名稱:databackup.sql.tar.gz

第三句是將壓縮了的資料庫檔案發送到指定的郵箱.....

其中的主題:Database Backup ,就是郵件的主題, 內容:Database Backup,就是郵件的內用,

/home/website/backups/databackup.sql.tar.gz 為附件

www@gmail.com為要發送的Email

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.