国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

用批處理實現自動備份和清理mysql數據庫的代碼

2024-07-24 13:04:53
字體:
來源:轉載
供稿:網友

有網友問我在win2003下如何自動備份MySQL數據庫,既然是自動備份,那肯定得寫腳本。我想了想,這個并不是很困難,是很容易實現的,備份可以用腳本實現,那自動又該如何實現呢?也很簡單,就用windows自帶的“任務計劃”功能,設定一個時間,讓系統定時跑腳本,不就實現了自動備份數據庫的功能了嗎?

不過到現在已經有很多的mysql備份軟件,例如我比較喜歡使用的是護衛神的好備份軟件。

下載地址:

首先把腳本代碼貼出來:

復制代碼 代碼如下:


@echo on 

REM------------------------backup bugdb which is InnoDB-----------------------------   
del C:/backup/website/bugdb_*.sql   
cd F:/usr/wamp/mysql/bin   
set year=%date:~0,4%   
set month=%date:~5,2%   
set day=%date:~8,2%   
set filename=bugdb_%year%%month%%day%.sql   
mysqldump.exe bugdb -uroot -p123456 > F:/backup/website/%filename%   
@echo off  

第9行  也可以換成     set filename=bugdb%date:~0,10%.sql

依次解釋一下每句代碼的意思:

•第四行:刪除指定目錄下的文件名包含有“bugdb_”字樣的sql文件。因為這個代碼是我先前寫的,在公司的服務器上每天晚上跑一次。所以每次備份之前,先刪除頭天已備份成功的文件。
•第五行:進入MySQL的bin目錄,因為在此目錄下有個mysqldump.exe的文件,該文件時MySQL數據庫自帶的備份和恢復MySQL數據庫的工具,這個腳本文件正是用到該工具。
•第六行:取當前系統日期的年份,以四位數字表示,如2010。
•第七行:取當前系統日期的月份,以兩位數字表示,如03。
•第八行:取當前系統日期的日期,以兩位數字表示,如12。
•第九行:定義備份文件名,最終的文件名以bugdb_20100312.sql形式存在,即文件名加日期的形式。
•第十行:執行備份。
再來解釋一下mysqldump的語法格式。格式為:

1.mysqldump.exe "要備份的數據庫名" -u(接用戶名) -p(接密碼) > "備份文件存放的路徑及文件名" 其中“>”的作用是輸出重定向,即把mysqldump.exe備份的數據輸出到一個文件里并保存。

將以上腳本復制到一個文本文件里,并另存為*.bat,如backup.bat的批處理文件,接下來會要用到該文件,我把它存在D:/scripts/backup_bugdb.bat。

打開“控制面板”里的“任務計劃”,新建一個計劃任務:

用批處理實現自動備份和清理mysql數據庫的代碼



在“運行”里面通過瀏覽按鈕找到剛保存的backup.bat批處理文件,在“計劃”選項卡和“設置”選項卡里根據自己的實際需要進行設定,設置完畢后點“確定”進行保存該任務。接下來系統會在指定的時間里周期性地運行此腳本,從而達到自動備份數據庫的目的。

用批處理實現自動備份和清理mysql數據庫的代碼



注意: 當設置的時候 提示你“沒有權限”的時候,就勾選上面的 :僅在登入后運行

另外附上還原數據庫的命令:

復制代碼 代碼如下:


D:/html/wamp/mysql/bin/mysql.exe -uroot -p123456 --default-character-set=utf8 bugdb < F:/bugdb_20100312.sql

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沙洋县| 嘉祥县| 乐东| 乐平市| 蒙阴县| 吐鲁番市| 阳城县| 澄江县| 开阳县| 承德县| 灯塔市| 诸城市| 彝良县| 揭西县| 阳春市| 长宁区| 淮滨县| 兴隆县| 当雄县| 龙口市| 墨脱县| 南靖县| 贵定县| 久治县| 仙居县| 长兴县| 兴国县| 普宁市| 亳州市| 新干县| 大城县| 壤塘县| 曲阜市| 厦门市| 天津市| 增城市| 甘谷县| 定襄县| 苏州市| 上高县| 宿州市|