echo off备份mysql_windows下备份Linux服务器上的MySQL
【更新】
因為windows存在 10點前后生成的時間格式不同,導致無法正確生成sql文件。導致上次的備份文件無法生成
研究后對舊內容進行修改
@echo off
forfiles /p "D:\ERP_MySQLbak" /m mysql_backup_*.sql -d -2 /c "cmd /c del /f @path"
set/a a=%time:~0,2%,b=a+100
mysqldump --opt -uroot1 -proot -h10.26.40.111 --all-databases >D:\ERP_MySQLbak\mysql_backup_%date:~0,4%-%date:~5,2%-%date:~8,2%_%b:~-2%_%time:~3,2%_%time:~6,2%.sql
@echo on
將原來的時間部分進行修改
說明:
將時間點 轉化為數字,然后將時間加100 這樣獲取到的時間就是? 101、102 ... 111...124,然后截取后兩位。就能得到正確的結果。01、02.....10、12、16
問題解決
需要備份首先就需要在本地安裝MySQL
安裝教程:
自動備份和刪除備份文件的bat腳本:
@echo off
forfiles /p "D:\ERP_MySQLbak" /m mysql_backup_*.sql -d -1 /c "cmd /c del /f @path"
set "yMd=%date:~,4%%date:~5,2%%date:~8,2%"
set "hms=%time:~,2%%time:~3,2%%time:~6,2%"
"D:\Program Files\mysql-5.7.28-winx64\bin\mysqldump.exe" --opt -uroot1 -proot -h***.***.***.***? --all-databases>D:\ERP_MySQLbak\mysql_backup_%yMd%-%hms%.sql
@echo on
說明
forfiles /p "D:\ERP_MySQLbak" /m mysql_backup_*.sql -d -1 /c "cmd /c del /f @path"
刪除之前的備份文件
"D:\ERP_MySQLbak" 是備份文件存儲路徑
mysql_backup_*.sql 是備份文件名稱? ?以mysql_backup_ 開頭? 以.sql結尾
-d -1 是有效期為1天
set "yMd=%date:~,4%%date:~5,2%%date:~8,2%"
set "hms=%time:~,2%%time:~3,2%%time:~6,2%"
設置文件名稱中的日期和時間
"D:\Program Files\mysql-5.7.28-winx64\bin\mysqldump.exe" --opt -uroot1 -proot -h***.***.***.***? --all-databases>D:\ERP_MySQLbak\mysql_backup_%yMd%-%hms%.sql
指定 mysqldump目錄,使用root1 備份所有數據庫到?D:\ERP_MySQLbak\mysql_backup_%yMd%-%hms%.sql 文件
剩下就是在windows中創建計劃任務。
起個名
搞個觸發器
指定腳本
條件和設置 自己 搞
保存,直接執行一次,測試任務是否可以執行。
下次執行時間5-9:1:05
上次執行時間5-8 10:55
等著第二天看結果
總結
以上是生活随笔為你收集整理的echo off备份mysql_windows下备份Linux服务器上的MySQL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue 给iframe设置src_vue
- 下一篇: mysql集群重启报错lock_Cent