Linux 備份檔案和資料庫傳送到郵箱

2021-08-25 23:51:58 字數 1510 閱讀 6658

今天乙個誤操作 把乙個月的檔案備份和資料庫備份刪掉了 :shock:

做了乙個用sendmail傳送到郵箱的備份指令碼:

#!/bin/bash

# x , sendmail hoodbc20117

### setting path ###

backpath="/data0/mysql_bak"

date=`/bin/date "+%y-%m-%d-%h-%m-%s"`

zip -rq $backpath/erp_$date.zip /data/htdocs/www/erp/

echo "erp all backup" | mutt -a $backpath/erp_$date.zip -s "erp all backup" [email protected]

find $backpath -ctime +30 -name *.zip -delete

順便把資料庫備份的指令碼也記錄下來:

#!/bin/bash

# hoodbc20117

### database setting ###

user='root'

password=''

host="127.0.0.1"

databases=(erp)

### setting path ###

mysqldump=/usr/local/webserver/mysql/bin/mysqldump

backpath="/data0/mysql_bak"

date=`/bin/date "+%y-%m-%d-%h-%m-%s"`

for database in $

dofilename="$database-$date"

$mysqldump --add-drop-table --user $user --password=$password $database --lock-all-tables>> "$backpath/$filename.sql"

done

#tar zcf -r $backpath/erp_$date.tar.gz ~/data/htdocs/www/erp

#zip -rq $backpath/erp_$date.zip /data/htdocs/www/erp/

zip -rq $backpath/$filename.zip $backpath/$filename.sql

echo "erp db backup" | mutt -a $backpath/$filename.zip -s "erp db backup" [email protected]

find $backpath -ctime +30 -name *.sql -delete

記得加上--lock-all-tables的引數,這樣在匯出sql檔案的時候會鎖定表,當然也可以直接把資料庫檔案打包。最後加到crontab裡定時執行指令碼。

資料庫備份檔案還原方法

jason.lin 2017 11 10 星期五 工作有幾年了,現在發現前段時間遇到問題的解決方法最近經常記不住了,又得重新查詢解決辦法,費時費力,一直想著要做個部落格記錄這些方法,方便提醒自己,趁現在提了辭職時間比較充裕的時候,決定從現在開始拾起部落格這一塊。下面不廢話了,開始第一篇隨筆了!一 情...

利用Python爆破資料庫備份檔案

某次測試過程中,發現php備份功能 如下 根據時間生成備份檔案名 file name d date ymd t date his sql file name file name sql 那麼形成的檔名格式如 d20180118t101433.sql,理論上是可以爆破的,於是寫了一段python指令碼...

實現資料庫自動備份與備份檔案轉移

將壓縮包都解壓在 usr目錄下 進入tcl解壓目錄,然後進入unix目錄 configure make make install 後安裝expect,進入expect解壓目錄 configure with tclinclude usr src tcl8.4.19 generic with tclco...