mysql資料庫的備份是非常重要的工作之一,通過mysql資料庫的資料備份就能夠實現mysql資料庫中資料的絕對安全,mysql資料庫中的資料不會因為什麼小故障而丟失,自動備份則是更為方便的一種備份方式,下文中將給出詳細的解析。
mysql自動備份是非常關鍵的,特別是對於dba來說。這裡主要用**來說明這個問題,希望對各位有所幫助。可以將這個指令碼放進crontab,每天凌晨執行一次,自動備份。
這個指令碼每天最多隻執行一次,而且只保留最近五天的備份在伺服器上。
**:#!/bin/bash
#thisisashellscriptforautodbbackup
#poweredbyaspbiz
#2004-09
#setting
#設定資料庫名,資料庫登入名,密碼,備份路徑,日誌路徑,資料檔案位置,以及備份方式
#預設情況下備份方式是tar,還可以是mysqldump,mysqldotcopy
#預設情況下,用root(空)登入mysql資料庫,備份至/root/db***xx.tgz
dbname=mysql
dbuser=root
dbpasswd=
backuppath=/root/
logfile=/root/db.log
dbpath=/var/lib/mysql/
#backupmethod=mysqldump
#backupmethod=mysqlhotcopy
#backupmethod=tar
#settingend
newfile="$backuppath"db$(date+%y%m%d).tgz
dumpfile="$backuppath"db$(date+%y%m%d)
oldfile="$backuppath"db$(date+%y%m%d--date=5daysago).tgz
echo"-------------------------------------------">>$logfile
echo$(date+"%y-%m-%d%h:%m:%s")>>$logfile
echo"--------------------------">>$logfile
#deleteoldfile
if[-f$oldfile]
then
rm-f$oldfile>>$logfile2>&1
echo"[$oldfile]deleteoldfilesuccess!">>$logfile
else
echo"[$oldfile]nooldbackupfile!">>$logfile
fiif[-f$newfile]
then
echo"[$newfile]thebackupfilei***ists,cantbackup!">>$logfile
else
case$backupmethodin
mysqldump)
if[-z$dbpasswd]
then
mysqldump-u$dbuser--opt$dbname>$dumpfile
else
mysqldump-u$dbuser-p$dbpasswd--opt$dbname>$dumpfile
fitarczvf$newfile$dumpfile>>$logfile2>&1
echo"[$newfile]backupsuccess!">>$logfile
rm-rf$dumpfile
mysqlhotcopy)
rm-rf$dumpfile
mkdir$dumpfile
if[-z$dbpasswd]
then
mysqlhotcopy-u$dbuser$dbname$dumpfile>>$logfile2>&1
else
mysqlhotcopy-u$dbuser-p$dbpasswd$dbname$dumpfile>>$logfile2>&1
fitarczvf$newfile$dumpfile>>$logfile2>&1
echo"[$newfile]backupsuccess!">>$logfile
rm-rf$dumpfile
/etc/init.d/mysqldstop>/dev/null2>&1
tarczvf$newfile$dbpath$dbname>>$logfile2>&1
/etc/init.d/mysqldstart>/dev/null2>&1
echo"[$newfile]backupsuccess!">>$logfile
esac
fiecho"-------------------------------------------">>$logfile
關於mysql資料庫的自動備份就為大家介紹到這裡,大家按照上文中講解的步驟方法去進行mysql資料庫的自動備份工作,相信您一定可以很好的完成mysql資料庫的自動備份工作。
Linux 實現自動備份mysql
原理 利用linux的cron程序 用於定時執行任務 來定時呼叫mysql的備份工具mysqldump 實現自動備份。cron需要用crontab工具來管理。一 檢查linux中是否有安裝crontab 輸入 crontab l 如果顯示 command not found 說明沒有裝crontab...
mysql 自動備份許可權 Mysql 自動備份
很簡單的乙個自動備份方案 bas 件 backup.sh bin bash dbuser root dbpwd 123456 dbname jam00 delbackpath usr local mysql backup dbname date d 7 days ago y m d sql.gz r...
mysql自動備份開啟 MySQL自動備份
mysql user root 使用者名稱 mysql password password 密碼 mysql host localhost ip mysql port 3306 埠號 mysql charset utf8 編碼方式 backup db arr db name 要備份的資料庫名稱,多個...