mysql数据库的F5_windows下mysql每天定时备份数据库几种方法
在windows中備份mysql
數(shù)據(jù)庫的方法有很多種,如有常用的WinRAR備份mysql、mysqldump備份成sql文件、xcopy
直接復(fù)制文件形式備份數(shù)據(jù)庫,下面我來總結(jié)一下這些方法,并給出相關(guān)實例。
第一種:新建批處理文件 backup.dat,里面輸入以下代碼:
net?stop?mysql
xcopy?"C:/Program?Files/MySQL/MySQL?Server?5.0/data/piaoyi/*.*"?D:/db_backup/te:~0,10%/?/y
net?start?mysql
注意:批處理命令中路徑里有空格的話,必須在路徑上加上雙引號!
然后使用Windows的"計劃任務(wù)"定時執(zhí)行該批處理腳本即可。(例如:每天凌晨3點執(zhí)行backup.bat)
解釋:備份和恢復(fù)的操作都比較簡單,完整性比較高,控制備份周期比較靈活。此方法適合有獨立主機但對mysql沒有管理經(jīng)驗的用戶。缺點是占用空間比較多,備份期間mysql會短時間斷開(例如:針對30M左右的數(shù)據(jù)庫耗時5s左右)。
關(guān)于時間參數(shù)的參考:
te:~0,10%?//提取年月日信息
te:~-3%?//提取星期幾信息
%time:~0,5%?//提取時間中的時和分
%time:~0,-3%?//提取時和分和秒信息
第二種:mysqldump備份成sql文件==============
假想環(huán)境:
MySQL?安裝位置:C:/MySQL
論壇數(shù)據(jù)庫名稱為:bbs
MySQL root?密碼:123456
數(shù)據(jù)庫備份目的地:D:/db_backup/
腳本:
@echo?off
set?"Ymd=te:~,4%te:~5,2%te:~8,2%"
C:/MySQL/bin/mysqldump?--opt?-u?root?--password=123456bbs>D:/db_backup/bbs_%Ymd%.sql
@echo?on
將以上代碼保存為backup_db.bat
然后使用Windows的"計劃任務(wù)"定時執(zhí)行該腳本即可。(例如:每天凌晨5點執(zhí)行back_db.bat)
說明:此方法可以不用關(guān)閉數(shù)據(jù)庫,并且可以按每一天的時間來名稱備份文件。
通過te:~5,2%來組合得出當(dāng)前日期,組合的效果為yyyymmdd,date命令得到的日期格式默認為yyyy-mm-dd(如果不是此格式可以通過pause命令來暫停命令行窗口看通過te:~,20%得到的當(dāng)前計算機日期格式),所以通過te:~5,2%即可得到日期中的第五個字符開始的兩個字符,例如今天為2009-02-05,通過te:~5,2%則可以得到02。(日期的字符串的下標是從0開始的)
第三種:利用WinRAR對MySQL數(shù)據(jù)庫進行定時備份。?對于MySQL的備份,好的方法是直接備份MySQL數(shù)據(jù)庫的Data目錄。下面提供了一個利用WinRAR來對Data目錄進行定時備份的方法。
首先當(dāng)然要把WinRAR安裝到計算機上。
將下面的命令寫入到一個文本文件里,如 backup.bat
net?stop?mysql
"C:/Program?Files/WinRAR/WinRAR.exe"?a?-ag?-k?-r?-s?D:/db_backup/mysql_.rar?"C:/Program?Files/MySQL/MySQL?Server?5.0/data/"
net?start?mysql
winrar參數(shù)解釋:
a: 添加文件到壓縮文件
-ag: 使用當(dāng)前日期生成壓縮文件名
-k: 鎖定壓縮文件
-r: 遞歸子目錄
-s: 創(chuàng)建固實壓縮文件
執(zhí)行以上文件后,會生成一個壓縮文件如:mysql_20130803004138.rar。
進入控制面版,打開計劃任務(wù),雙擊"添加計劃任務(wù)"。在計劃任務(wù)向?qū)е姓业絼偛诺腷ackup.bat文件,接著為這個任務(wù)指定一個運行時間和運行時使用的賬號密碼就可以了。
這種方法缺點是占用時間比較多,備份期間壓縮需要時間,mysql斷開比第一種方法更多的時間,但是對于文件命名很好。
1.在D盤創(chuàng)建db_backup文件夾,并新建backdb.bat。
2.在backdb.bat里面加入一下代碼:
echo?取日期、時間變量值setyy=te:~0,4%
set?mm=te:~5,2%
set?dd=te:~8,2%
if?/i?%time:~0,2%?lss?10?set?hh=0%time:~1,1%
if?/i?%time:~0,2%?geq?10?set?hh=%time:~0,2%
set?mn=%time:~3,2%
set?ss=%time:~6,2%
set?date=%yy%%mm%%
set?time=%hh%%mn%%ss%
set?filename=te%_%time%
"C:/Program?Files?(x86)/MySQL/MySQL?Server?5.0/bin/mysqldump.exe"?-uroot?-pxxx?--opt?--default-character-set=utf8-e?--triggers?-R?--hex-blob?--flush-logs?-x?DBNAME>C:/db_backup/DBNAME%filename%.sql
echo?導(dǎo)出已經(jīng)完成
#pause
<spanstyle="color:?rgb(68,?68,?68);?font-family:?Simsun;?font-size:?14px;?line-height:?26px;?background-color:?rgb(255,?255,?255);">在這里要注意你的MySQL安裝路徑以及相應(yīng)的數(shù)據(jù)庫用戶名和密碼,我使用的是D:/sense/mysql/bin。span>
3.雙擊運行此腳本,看是否會生成Dbname20111207_200445.sql文件,如有則腳本無錯誤。
4.進入控制面板,在任務(wù)計劃里添加計劃任務(wù),把要執(zhí)行的批處理以瀏覽方式加入任務(wù)計劃,并設(shè)定好執(zhí)行時間,最好選擇每天執(zhí)行,這樣就實現(xiàn)每天自動備份數(shù)據(jù)庫了。
總結(jié)
以上是生活随笔為你收集整理的mysql数据库的F5_windows下mysql每天定时备份数据库几种方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java slf4j日志框架_SLF4J
- 下一篇: php mysql try catch_