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

來源:互聯網
上載者:User

標籤:資料庫   並發   mysql   

一個部落格,一個網站最重要的就是資料庫,所以經常備份資料是必須的.儘管 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" [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.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 為附件

[email protected]為要發送的Email

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.