2016-04-25 11 views
0

Ich versuche Auto-Backup von MySQL-Datenbank machen; Viele Links wurden durchsucht, es gab viele Referenzen, aber ich fand nicht einmal eine Option, die für mich funktioniert (akzeptierte kostenpflichtige Software). Schließlich versuche ich dies link.Automatische MySQL-Backup mit Batch-Datei

Jetzt habe ich Batch-Skript (unten angegeben) und ich bearbeiten es nach meinen Anmeldeinformationen, aber es erstellt leere SQL-Datei. Ich weiß nicht warum? Ich bin neu in MySQL und es ist Auto-Backup-Mechanismus sehr schlecht.

@ECHO OFF 

set TIMESTAMP=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2% 

REM Export all databases into file C:\path\backup\databases.[year][month][day].sql 
"C:\wamp\bin\mysql\mysql5.6.12\bin\mysqldump.exe" –-user=root –-password=xyz --all-databases --result-file="D:\dbbackup.%TIMESTAMP%.sql" 

REM Change working directory to the location of the DB dump file. 
C: 
CD \path-to\backup\ 

REM Compress DB dump file into CAB file (use "EXPAND file.cab" to decompress). 
MAKECAB "databases.%TIMESTAMP%.sql" "databases.%TIMESTAMP%.sql.cab" 

REM Delete uncompressed DB dump file. 
DEL /q /f "databases.%TIMESTAMP%.sql" 

Ich führe diese Batch-Datei erstellen Backup, aber leere SQL-Datei.

Antwort

3

Für zukünftige Referenz und Hilfe werde ich meine Antwort aktualisieren! Aktualisieren Sie einfach die unten stehende Batch-Datei entsprechend Ihre Konfiguration:

echo off 
start "" "C:\wamp\bin\mysql\mysql5.6.12\bin\mysqldump.exe(your mysqldump address)" --user root --password=(provide here) databaseNameHere --result-file="D:\where you want path with SqlFileName.sql" --database databaseNameHere 

Sie

% date verwenden: ~ 10,4% -% Datum:. ~ 7,2% -% Datum: ~ 4,2% Blockquote

in Ihren Backup-Dateinamen speichert es das Datum auch in Dateinamen.

Dann führen Sie diese Batch-Datei regelmäßig mit windows task schedule.

0

Dies funktioniert für mich Sicherung von Mysql-Datenbank zu nehmen

@echo off 
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump" --user=root -- 
password=root --result-file="C:\Users\supriyam\Desktop\HotelBooking\db.sql" 
databasename(doctorsystem) 
echo Done! 
pause 
exit