windows下mysql備份腳本

 

公司有個需求,要天天備份下一個即時通軟件的Mysql數據庫,下面是我寫的運行在windows下的版本文件。設置個定時任務,沒事讓它本身背就能夠了。mysql

D:sql

cd  D:\test數據庫

rem 設置變量:備份文件名windows

SET BAK_FILE=%date:~0,4%%date:~5,2%%date:~8,2%服務器

rem 設置變量:日誌文件名app

SET LOG_FILE=MY_DBBAK.logide

SET RAR_CMD="C:\Program Files\WinRAR\Rar.exe"spa

rem 記錄日誌日誌

echo "%date%" 》 %LOG_FILE%code

rem 開始作備份

mysqldump  -h localhost -u root -pmasicong --single-transaction  -databases masicong zhangwang >  %BAK_FILE%.sql

rem 壓縮備份文件

%RAR_CMD% a %BAK_FILE%.rar %BAK_FILE%.sql

rem 刪除源文件

del /F %BAK_FILE%.sql

PAUSE

--------------------------------------------------------------

 

備份MySQL數據庫的命令

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

備份MySQL數據庫爲帶刪除表的格式 
備份MySQL數據庫爲帶刪除表的格式,可以讓該備份覆蓋已有數據庫而不須要手動刪除原有數據庫。

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

直接將MySQL數據庫壓縮備份

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

備份MySQL數據庫某個(些)表

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

同時備份多個MySQL數據庫

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

僅僅備份數據庫結構

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

備份服務器上全部數據庫

mysqldump –all-databases > allbackupfile.sql

還原MySQL數據庫的命令

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

還原壓縮的MySQL數據庫

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

將數據庫轉移到新服務器

mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
 
  幾個經常使用用例:

1.導出整個數據庫
mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名
mysqldump -u root -p dataname >dataname.sql 
這個時候會提示要你輸入root用戶名的密碼,輸入密碼後dataname數據庫就成功備份在mysql/bin/目錄中.

2.導出一個表
mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
mysqldump -u root -p dataname users> dataname_users.sql

3.導出一個數據庫結構
mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:/wcnc_db.sql 
-d 沒有數據 –add-drop-table 在每一個create語句以前增長一個drop table

4.導入數據庫
經常使用source 命令
進入mysql數據庫控制檯,
如mysql -u root -p

mysql>use 數據庫

而後使用source命令,後面參數爲腳本文件(如這裏用到的.sql) mysql>source d:/wcnc_db.sql

相關文章
相關標籤/搜索