日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

win2003下如何自动备份MySQL数据库

發(fā)布時(shí)間:2025/3/15 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 win2003下如何自动备份MySQL数据库 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

http://www.cnblogs.com/lxJack/archive/2011/05/22/2053270.html

有網(wǎng)友問我在win2003下如何自動(dòng)備份MySQL數(shù)據(jù)庫,既然是自動(dòng)備份,那肯定得寫腳本。我想了想,這個(gè)并不是很困難,是很容易實(shí)現(xiàn)的,備份可以用腳本實(shí)現(xiàn),那自動(dòng)又該如何實(shí)現(xiàn)呢?也很簡單,就用windows自帶的“任務(wù)計(jì)劃”功能,設(shè)定一個(gè)時(shí)間,讓系統(tǒng)定時(shí)跑腳本,不就實(shí)現(xiàn)了自動(dòng)備份數(shù)據(jù)庫的功能了嗎?首先把腳本代碼貼出來:

  • @echo?on ?
  • ?
  • REM------------------------backup?bugdb?which?is?InnoDB----------------------------- ?
  • del?F:\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?
  • 依次解釋一下每句代碼的意思:

    • 第四行:刪除指定目錄下的文件名包含有“bugdb_”字樣的sql文件。因?yàn)檫@個(gè)代碼是我先前寫的,在公司的服務(wù)器上每天晚上跑一次。所以每次備份之前,先刪除頭天已備份成功的文件。
    • 第五行:進(jìn)入MySQL的bin目錄,因?yàn)樵诖四夸浵掠袀€(gè)mysqldump.exe的文件,該文件時(shí)MySQL數(shù)據(jù)庫自帶的備份和恢復(fù)MySQL數(shù)據(jù)庫的工具,這個(gè)腳本文件正是用到該工具。
    • 第六行:取當(dāng)前系統(tǒng)日期的年份,以四位數(shù)字表示,如2010。
    • 第七行:取當(dāng)前系統(tǒng)日期的月份,以兩位數(shù)字表示,如03。
    • 第八行:取當(dāng)前系統(tǒng)日期的日期,以兩位數(shù)字表示,如12。
    • 第九行:定義備份文件名,最終的文件名以bugdb_20100312.sql形式存在,即文件名加日期的形式。
    • 第十行:執(zhí)行備份。

    再來解釋一下mysqldump的語法格式。格式為:

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

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

    打開“控制面板”里的“任務(wù)計(jì)劃”,新建一個(gè)計(jì)劃任務(wù):

    在“運(yùn)行”里面通過瀏覽按鈕找到剛保存的backup.bat批處理文件,在“計(jì)劃”選項(xiàng)卡和“設(shè)置”選項(xiàng)卡里根據(jù)自己的實(shí)際需要進(jìn)行設(shè)定,設(shè)置完畢后點(diǎn)“確定”進(jìn)行保存該任務(wù)。接下來系統(tǒng)會(huì)在指定的時(shí)間里周期性地運(yùn)行此腳本,從而達(dá)到自動(dòng)備份數(shù)據(jù)庫的目的。

    另外附上還原數(shù)據(jù)庫的命令:

  • D:\html\wamp\mysql\bin\mysql.exe?-uroot?-p123456?
  • --default-character-set=utf8?bugdb?<?F:\bugdb_20100312.sql?
  • 備份MySQL數(shù)據(jù)庫的命令

    mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql

    備份MySQL數(shù)據(jù)庫為帶刪除表的格式
    備份MySQL數(shù)據(jù)庫為帶刪除表的格式,能夠讓該備份覆蓋已有數(shù)據(jù)庫而不需要手動(dòng)刪除原有數(shù)據(jù)庫。

    mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql

    直接將MySQL數(shù)據(jù)庫壓縮備份

    mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz

    備份MySQL數(shù)據(jù)庫某個(gè)(些)表

    mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql

    同時(shí)備份多個(gè)MySQL數(shù)據(jù)庫

    mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql

    僅僅備份數(shù)據(jù)庫結(jié)構(gòu)

    mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql

    備份服務(wù)器上所有數(shù)據(jù)庫

    mysqldump –all-databases > allbackupfile.sql

    還原MySQL數(shù)據(jù)庫的命令

    mysql -hhostname -uusername -ppassword databasename < backupfile.sql

    還原壓縮的MySQL數(shù)據(jù)庫

    gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename

    將數(shù)據(jù)庫轉(zhuǎn)移到新服務(wù)器

    mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename

    轉(zhuǎn)載于:https://www.cnblogs.com/lteal/archive/2013/02/27/2935196.html

    總結(jié)

    以上是生活随笔為你收集整理的win2003下如何自动备份MySQL数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。