摘要:本文轉(zhuǎn)自豆?jié){下每天備份數(shù)據(jù)庫并發(fā)送到指定郵箱一配置郵箱這里使用的是網(wǎng)易郵箱郵箱的服務(wù),服務(wù)器是。成功收到郵件,沒問題。編寫腳本和定時任務(wù)萬事俱備,接下來要做自動化工作建立一個備份腳本,并使用定時任務(wù)每天執(zhí)行它。
本文轉(zhuǎn)自豆?jié){Melon :linux下每天備份Mysql數(shù)據(jù)庫并發(fā)送到指定郵箱一、配置郵箱
這里使用的是網(wǎng)易郵箱126郵箱的STMP服務(wù),服務(wù)器是smtp.126.com。如果你使用其它第三方郵箱,在帳號設(shè)置那里一般都有說明SMTP服務(wù)器地址。
如果你的Ubuntu沒有安裝mail模塊,則需要執(zhí)行這條命令來安裝郵件模塊:
root@name:~# apt-get install mailutils
打開mail配置文件
vim /etc/mail.rc
在結(jié)尾部分加上這些設(shè)置
set from=test@126.com smtp=test@126.com set smtp-auth-user=test@126.com smtp-auth-password=mypassword smtp-auth=login
測試郵件是否發(fā)送成功:
echo "test content" | mail -s "mail title" myqq@qq.com
解釋:test是郵件內(nèi)容,mail title是郵件標(biāo)題,xxxx@qq.com表示你要發(fā)送到這個郵箱地址。成功收到郵件,沒問題。
二、備份Mysql數(shù)據(jù)庫備份Mysql使用mysqldump命令,先來熟悉一下,待會再改進(jìn)
mysqldump -u數(shù)據(jù)庫帳號 -p數(shù)據(jù)庫密碼 數(shù)據(jù)庫名 > "/tmp/bak.sql"
執(zhí)行以上命令,進(jìn)入/tmp/bak.sql備份文件是否存在,存在就OK了,注意 -p數(shù)據(jù)庫密碼之間沒有空格。
編寫腳本和定時任務(wù)
萬事俱備,接下來要做自動化工作:建立一個備份腳本,并使用定時任務(wù)每天執(zhí)行它。
在某個目錄建立一個SHELL腳本,為了簡單說明我直接建在/back_mysql.sh,內(nèi)容如下
vim /back_mysql.sh #!/bin/bash #Send the mysql of backup file to email #Author Melon #Version 0.1 #根據(jù)日期命名備份文件 filename=`date +%Y-%m-%d`"-blog-bak.sql" path="/tmp/"$filename #執(zhí)行備份 /usr/bin/mysqldump -u數(shù)據(jù)庫帳號 -p數(shù)據(jù)庫密碼 數(shù)據(jù)庫名 > $path #發(fā)送郵件 #刪除臨時文件 echo "郵件內(nèi)容" | mail -s $filename -a $path 郵箱 rm -f $path
/usr/bin/mysqldump是完整的命令路徑,如果你不知道命令的完整路徑,可以使用whereis 命令名來查看 使用crontab建立定時任務(wù),每天的0時0分執(zhí)行
crontab -e 0 0 * * * /bin/sh /back_mysql.sh
你可以設(shè)置其它時間段發(fā)送,具體crontab的用法請自行搜索。
使用zip命令打包文件并加密
可能會覺得直接發(fā)sql文件不夠安全,或者還有其它文件比如附件要一起發(fā)送,下面我將使用linux zip命令對附件和sql文件一起加密打包,完整代碼如下,詳細(xì)不一一說明了
#!/bin/bash #Send the blog of backup file to email #Author Melon #Version 0.2 #zip文件名 filename=`date +%Y-%m-%d`"-blog-bak.zip" #zip文件路徑 path="/tmp/"$filename #sql備份文件路徑 mysqlpath="/tmp/blog.sql" #附件備份路徑 uploadpath="/tmp/uploads" /usr/bin/mysqldump -u數(shù)據(jù)庫帳號 -p數(shù)據(jù)庫密碼 數(shù)據(jù)庫名 > $mysqlpath #創(chuàng)建附件備份(這是我博客的附件位置) cp -r "/www/blog/usr/uploads/" "/tmp/" #加密打包,>/dev/null 2>&1表示信息重定向,方便調(diào)試時不輸出加密信息,你也可以省略 /usr/bin/zip -P 加密密碼 -r $path $mysqlpath $uploadpath >/dev/null 2>&1 echo "郵件內(nèi)容" | mail -s $filename -a $path 郵箱 #刪除備份文件 rm -f $path $mysqlpath rm -rf $uploadpath
注:本文轉(zhuǎn)自豆?jié){Melon:
linux下每天備份Mysql數(shù)據(jù)庫并發(fā)送到指定郵箱
Linux郵件服務(wù)入門
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/22151.html
摘要:肖鵬微博數(shù)據(jù)庫那些事兒肖鵬,微博研發(fā)中心技術(shù)經(jīng)理,主要負(fù)責(zé)微博數(shù)據(jù)庫相關(guān)的業(yè)務(wù)保障性能優(yōu)化架構(gòu)設(shè)計,以及周邊的自動化系統(tǒng)建設(shè)。經(jīng)歷了微博數(shù)據(jù)庫各個階段的架構(gòu)改造,包括服務(wù)保障及體系建設(shè)微博多機(jī)房部署微博平臺化改造等項目。 showImg(https://segmentfault.com/img/bV24Gs?w=900&h=385); 對于手握數(shù)據(jù)庫的開發(fā)人員來說,沒有誤刪過庫的人生是...
摘要:七牛的,到獲取,登錄七牛后在七牛的帳號設(shè)置密鑰中可找到。要備份的網(wǎng)站代碼目錄。計劃任務(wù)腳本定時執(zhí)行時間,默認(rèn)凌晨分進(jìn)行備份配置內(nèi)容結(jié)束。 20140211234856 這是我公開發(fā)布的第一個Shell腳本程序,這能極大的方便Linux服務(wù)器管理員使用它自動備份數(shù)據(jù)到七牛云存儲。 應(yīng)網(wǎng)友需求發(fā)布了Windows版本,詳情見:http://wyr.me/330.html 這個Linux...
閱讀 3520·2021-11-08 13:20
閱讀 3440·2021-09-30 09:48
閱讀 2675·2021-09-29 09:41
閱讀 643·2021-09-22 15:04
閱讀 2582·2021-08-23 09:44
閱讀 3832·2020-12-03 17:26
閱讀 1077·2019-08-30 14:10
閱讀 1649·2019-08-29 18:34