Seite 1 von 1
					
				Datensicherung einer MySQL Datenbank
				Verfasst: 13.04.2021 10:15
				von MenschMarkus
				Hallo zusammen,
ich habe eine MySQL Datenbank mit mehreren Tabellen. ich würde diese gerne einmal sichern.
Unter MySQL gibt es den mysqldump Befehl. Wie kann ich den denn aus PB heraus ausführen und wie bekomme ich die SQL Datei gespeichert?
Eine Alternative ist natürlich den Code in PB selbst zu schreiben, doch wenn ich das umgehen kann...
			 
			
					
				Re: Datensicherung einer MySQL Datenbank
				Verfasst: 13.04.2021 10:42
				von NicTheQuick
				Du kannst es zum Beispiel mit RunProgram aufrufen und zusammen mit dem Parameter `--result-file=file_name, -r file_name`alles direkt in eine Datei schreiben lassen.
			 
			
					
				Re: Datensicherung einer MySQL Datenbank
				Verfasst: 13.04.2021 10:46
				von MenschMarkus
				Danke für die Antwort Nick. 
Vielleicht sollte ich noch erwähnen, dass die MySQL DB in einer VM unter Linux läuft und ich diese via ODBC verwende. Ich weiß nicht, ob ich da mit RunProgram weiter komme.
			 
			
					
				Re: Datensicherung einer MySQL Datenbank
				Verfasst: 13.04.2021 11:44
				von NicTheQuick
				Achso, du bist unter Windows und auch noch hinter ODBC. Da habe ich keine Ahnung. Vielleicht klappt ein 
SELECT ... INTO Statement. Das habe ich aber selbst noch nicht probiert und man muss wohl ganz spezifisch angeben wie die Ausgabedatei formatiert sein soll.
 
			 
			
					
				Re: Datensicherung einer MySQL Datenbank
				Verfasst: 13.04.2021 11:58
				von MenschMarkus
				Hab Ich schon befürchtet, dass ich das dann doch selbst programmierne muss.
SELECT INTO wird nicht funktionieren, da der Export in eine Datei in SQL Syntax geschrieben wird.
Was solls, dann ist das so und investieren noch etwas Zeit.
Danke für den Versuch
			 
			
					
				Re: Datensicherung einer MySQL Datenbank
				Verfasst: 22.04.2021 08:05
				von SirMatti74
				MySQL-Backups konnte ich mittels MySQLDump.exe immer so erstellen:
Code: Alles auswählen
MySQLDumpProgramName.s  = "C:\Test\mysqldump.exe"
MySQLDumpParameter.s    = "-u Root "                                          ; Username - hier: Root
MySQLDumpParameter.s    + "-p12345678 "                                       ; Passwort - hier: 12345678 
MySQLDumpParameter.s    + "-h mysql.test.local "                              ; Hostname - hier: mysql.test.local
MySQLDumpParameter.s    + "-r "+Chr(34)+"C:\Test\Dumpfile.sql"+Chr(34)+" "    ; Dumpfile - hier: C:\Test\Dumpfile.sql
MySQLDumpParameter.s    + "-v "                                               ; weitere Parameter - hier: Verbose-Modus
MySQLDumpParameter.s    + "dbTest"                                            ; Datenbank - hier: dbTest
MySQLDumpWorkingDir.s   = "C:\Test"
MySQLDumpFlags.i        = #PB_Program_Open
MySQLDumpRunProgram = RunProgram(MySQLDumpProgramName, MySQLDumpParameter, MySQLDumpWorkingDir, MySQLDumpFlags)