Entwickler-Ecke
Datenbanken - Firebird GBak selbstgebaut
Jakane - Do 21.06.12 08:31
Titel: Firebird GBak selbstgebaut
Hallo liebe Delphi-Helfer :)
auf Arbeit benutzen wir ein GBak-Programm von Firebird um regelmässig unsere Datenbank zu sichern.
Allerdings ist er bei einigen Kunden unzuverlässig, weswegen wir ein eigenes Programm bauen wollen um diese Datenbank-Sicherung anzustossen.
Bei uns hat aber keiner ein Plan wie das geht :lol:
Weiss jemand wie ich aus Delphi diesen Vorgang anstossen kann :?:
Danke im Vorraus für die Hilfe
MaxWurzel - Do 21.06.12 08:48
Du könntest die Jedikomponente JvUIBBackup probieren.
Jakane - Do 21.06.12 09:01
MaxWurzel hat folgendes geschrieben : |
| Du könntest die Jedikomponente JvUIBBackup probieren. |
Werd ich probieren, aber ich wollte eigendlich so wenig Komponenten wie möglich in meine Programme packen :-/
Bzw. nur Standard-Komponenten verwenden.
zuma - Do 21.06.12 12:20
Hast du evtl. auch noch Interbase ? Oder zumindest die Interbase-komponenten ?
Dort sind IBBackup und IBRestore enthalten, mit denen geht das sichern super, die nutzen das gbak ebenfalls.
gbak kann man aber auch rein per batch-datei steuern/nutzen, solange man die richtigen parameter kennt ;)
Nersgatt - Do 21.06.12 18:52
wir nutzen auch Gbak. Das funktioniert zuverlässig. Wo hast Du denn Probleme mit GBak?
Lemmy - Do 21.06.12 20:57
MaxWurzel hat folgendes geschrieben : |
| Du könntest die Jedikomponente JvUIBBackup probieren. |
Ganz sicher nicht - denn das Teil ist uralt und zudem schon seit längerem nicht mehr in den offiziellen Ausgaben dabei. Wenn dann die Original UIB-Komponenten aus dem SVN-Repository. Die lassen sich auch ohne Installation in Delphi nutzen.
http://www.progdigy.com/?page_id=5
Allerdings würde auch mich interessieren warum gbak bei Kunden nicht funktioniert? Ich hatte das selbst einige Zeit in Einsatz, ohne Probleme
Jakane - Fr 22.06.12 09:09
zuma hat folgendes geschrieben : |
Hast du evtl. auch noch Interbase ? Oder zumindest die Interbase-komponenten ?
Dort sind IBBackup und IBRestore enthalten, mit denen geht das sichern super, die nutzen das gbak ebenfalls.
gbak kann man aber auch rein per batch-datei steuern/nutzen, solange man die richtigen parameter kennt ;) |
kennt jemand die parameter? :P und wie man das Delphi erklärt?
Nersgatt hat folgendes geschrieben : |
| wir nutzen auch Gbak. Das funktioniert zuverlässig. Wo hast Du denn Probleme mit GBak? |
nur in 50% der Fälle bekomme ich die Sicherungsdatei per eMail, obwohl alle Kunden gleich eingestellt sind.
Nersgatt - Fr 22.06.12 10:13
Und Du bist sicher, dass das GBak liegt und nicht Deiner Emailübertragung? Denn damit hat GBak ja nichts zu tun.
zuma - Fr 22.06.12 10:24
Jakane hat folgendes geschrieben : |
zuma hat folgendes geschrieben : | Hast du evtl. auch noch Interbase ? Oder zumindest die Interbase-komponenten ?
Dort sind IBBackup und IBRestore enthalten, mit denen geht das sichern super, die nutzen das gbak ebenfalls.
gbak kann man aber auch rein per batch-datei steuern/nutzen, solange man die richtigen parameter kennt ;) |
kennt jemand die parameter? :P und wie man das Delphi erklärt?
Nersgatt hat folgendes geschrieben : | | wir nutzen auch Gbak. Das funktioniert zuverlässig. Wo hast Du denn Probleme mit GBak? |
nur in 50% der Fälle bekomme ich die Sicherungsdatei per eMail, obwohl alle Kunden gleich eingestellt sind. |
ich hab irgendwo ne liste aller parameter für gbak, gsec und wie die tools da alle heissen ...
muss ich aber erstmal suchen, kann etwas dauern (nutze das nicht mehr, sondern die ib-tools)
ich bin aber auch Nersgatt's Meinung, prüfe doch erstmal, ob die Backups erstellt wurden und nur nicht gesendet werden ?
Jakane - Fr 22.06.12 10:28
Nersgatt hat folgendes geschrieben : |
| Und Du bist sicher, dass das GBak liegt und nicht Deiner Emailübertragung? Denn damit hat GBak ja nichts zu tun. |
Die BackUp laufen eigendlich (fast) immer sauber durch. Die Sicherungsdatei ist auch immer erstellt. Sie wird nur nicht immer verschickt und das macht das GBak-Programm.
Nersgatt - Fr 22.06.12 10:29
Hä? Gbak schickt definitiv keine Emails!
Parameter: einfach gbak ohne Parameter in der Konsole aufrufen.
Jakane - Fr 22.06.12 11:06
Nersgatt hat folgendes geschrieben : |
| Hä? Gbak schickt definitiv keine Emails! |
Und wieso kann man dann E-mail-Log-File ankreuzen und E-Mail-Daten angeben?
Nersgatt hat folgendes geschrieben : |
| Parameter: einfach gbak ohne Parameter in der Konsole aufrufen. |
Ich bin ein Delphi-Anfänger. Ich brauch es leider etwas genauer.
Nersgatt - Fr 22.06.12 11:13
Aha - wir reden von 2 verschiedenen Dingen. :!:
Du hast scheinbar ein Programm namens "Gbak Scheduler". Das ist NICHT gbak.
Die gbak.exe liegt im Firebirdordner\bin. Das ist die, die ganz offiziell dabei. Ist ein reines Kommandozeilentool und erstellt nur die Sicherungsdatei.
Dein Scheduler irgendeine Software, die vermutlich gbak aufruft.
HelgeLange - Fr 22.06.12 15:55
Die DevArt IBDAC Komponenten haben auch ein Backup/Restore integriert. Einfach in der Komponente die Parameter setzen und der macht das schon. Nutze ich auch für ein Aktualisierungs-Tools der DB, vorher immer schön ein Backup machen :)
Jakane - Mo 25.06.12 08:44
Programm hin oder her. :P
Ich weiss leider immernoch nicht, wie ich die gbak.exe über Delphi richtig anstossen kann, erkennen wann sie fertig ist und vlt auch herausbekomme ob irgendwas schief gelaufen ist.
Und das alles, wenn möglich, ohne zusätzliche Komponenten in mein Programm zu packen :D
Und andere externe Programme will ich nicht benutzen, sonst würd ich ja nichts zu programmieren haben ^^
zuma - Mo 25.06.12 15:16
fremde programme anstossen ist dir fremd, aber du willst eine eigene gbak-lösung programmieren ? Ob das die richtige Herangehensweise ist, mag ich bezweifeln ...
So, wie das klingt, ist das Backup kein Problem, sondern das versenden per Email ...
Warum willst du also links an der Schraube drehen, wenn die rechts locker ist ?
Jakane - Di 17.07.12 07:41
zuma hat folgendes geschrieben : |
fremde programme anstossen ist dir fremd, aber du willst eine eigene gbak-lösung programmieren ? Ob das die richtige Herangehensweise ist, mag ich bezweifeln ...
So, wie das klingt, ist das Backup kein Problem, sondern das versenden per Email ...
Warum willst du also links an der Schraube drehen, wenn die rechts locker ist ? |
ähm... weil mein Programm kein Problem beim eMail versenden hat, sondern das alte Programm was ich aktuell nutzen muss, weil das alte Programm das GBak macht.
Mein Programm das GBak aber noch nicht anstossen kann, weil ich immernoch nicht weiss wie ^^
Bisher macht das alte Programm das GBak und mein Programm verschickt dann die eMail, aber die Vorgehensweise ist Schrott.
Nersgatt - Di 17.07.12 08:27
Also Du kannst mit ShellExecute einen fremde Exe aufrufen. Damit rufst Du die gbak.exe auf, die im bin-Ordner Deiner Firebirdinstallation liegt.
Im 3. Parameter der Function gibst Du die Parameter an, die das Programm erwartet. Welche Parameter möglich sind, verrät Dir die gbak.exe, wenn Du sie in der Eingabeaufforderung mal komplett ohne Parameter aufrufst.
Jakane - Mi 18.07.12 09:01
Nersgatt hat folgendes geschrieben : |
Also Du kannst mit ShellExecute einen fremde Exe aufrufen. Damit rufst Du die gbak.exe auf, die im bin-Ordner Deiner Firebirdinstallation liegt.
Im 3. Parameter der Function gibst Du die Parameter an, die das Programm erwartet. Welche Parameter möglich sind, verrät Dir die gbak.exe, wenn Du sie in der Eingabeaufforderung mal komplett ohne Parameter aufrufst. |
Die Parameter raus finden hat zwar etwas gedauert, aber jetzt kann ich das alte Programm endlich wegschmeissen :D
Danke für die, wenn auch zögerliche und verwirrende, Lösung :D
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!