linux 下 mysql自動備份指令碼

2021-07-16 14:21:45 字數 1396 閱讀 7860

伺服器上有n個資料庫  現在需要備份其中的5個資料庫

隨性寫了個  僅供參考

-- 每天自動備份

db_user="root"

db_passwd="pwd"

time="$(date "+%y%m%d")"

all_db="$($mysql -u$db_user -p$db_passwd -bse 'show databases;')"

for db in $all_db

doif [ "$db" = "db_name1" ]; then

echo "$dump_time|$db" >>$backup_log_dir/dump.log 2>&1

$mysqldump -u$db_user -p$db_passwd $db > "$backup_dir/$db.$time.sql"

fiif [ "$db" = "db_name2" ]; then

echo "$dump_time|$db" >>$backup_log_dir/dump.log 2>&1

$mysqldump -u$db_user -p$db_passwd $db > "$backup_dir/$db.$time.sql"

fiif [ "$db" = "db_name3" ]; then

echo "$dump_time|$db" >>$backup_log_dir/dump.log 2>&1

$mysqldump -u$db_user -p$db_passwd $db > "$backup_dir/$db.$time.sql"

fiif [ "$db" = "db_name4" ]; then

echo "$dump_time|$db" >>$backup_log_dir/dump.log 2>&1

$mysqldump -u$db_user -p$db_passwd $db > "$backup_dir/$db.$time.sql"

fiif [ "$db" = "db_name5" ]; then

echo "$dump_time|$db" >>$backup_log_dir/dump.log 2>&1

$mysqldump -u$db_user -p$db_passwd $db > "$backup_dir/$db.$time.sql"

fidone

gzip *sql

#解壓命令 gunzip

-- 每天自動刪除7天前的備份

-- rm back_up 7 days ago

cd /data/db_backup/

rm_date_format=`date -d '7 day ago' '+%y%m%d'`

rm -f *$rm_date_format.sql.gz

然後將2個檔案 放到crontab 裡面定時執行就可以了、

linux下mysql自動備份

其實這個mysql自動備份的小指令碼非常簡單,下面是這個小指令碼的步驟。cd www mkdir mysqlbackup vi mysqlautobackup.sh 這個mysqlautobackup.sh的檔案裡寫入以下內容 filename date y m d mysql bin dir my...

linux 下mysql自動備份

前不久要在linux下每天自動備份mysql資料庫。版本 list linux redhat enterprise linux 5 mysql 5.1 list 在網上找了找,要寫個shell命令執行mysqldump然後儲存檔案 1.建立shell指令碼檔案 quote filename date...

linux 下 mysql自動備份指令碼

伺服器上有n個資料庫 現在需要備份其中的5個資料庫 隨性寫了個 僅供參考 每天自動備份 db user root db passwd pwd time date y m d all db mysql u db user p db passwd bse show databases for db in...