Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Firebrid Embedded: Backup der DB-Datei (https://www.delphipraxis.net/213373-firebrid-embedded-backup-der-db-datei.html)

BlueStarHH 19. Jul 2023 15:44

Datenbank: Firebird • Version: 3.x • Zugriff über: IBDAC

Firebrid Embedded: Backup der DB-Datei
 
Hallo,

ich benutze Firebrid Embedded mit einer lokalen Datenbankdatei. Kann ich nun einfach (während mein Delphi-Programm läuft, dass diese DB nutzt) mit dem Windows-Explorer die Dantenbankdatei kopieren? Oder könnte die Datei dann defekt sein? Was kann ich sonst ein Backup machen, wenn das Delphi-Programm dauerhaft laufen muss und nicht beendet werden darf?

Lemmy 19. Jul 2023 16:09

AW: Firebrid Embedded: Backup der DB-Datei
 
Servus,


Zitat:

Zitat von BlueStarHH (Beitrag 1524723)
ich benutze Firebrid Embedded mit einer lokalen Datenbankdatei. Kann ich nun einfach (während mein Delphi-Programm läuft, dass diese DB nutzt) mit dem Windows-Explorer die Dantenbankdatei kopieren?

ja kannst du, solltest Du aber besser nicht machen

Zitat:

Zitat von BlueStarHH (Beitrag 1524723)
Oder könnte die Datei dann defekt sein? Was kann ich sonst ein Backup machen, wenn das Delphi-Programm dauerhaft laufen muss und nicht beendet werden darf?

mit IBDac ein Backup erstellen (TIBCBackupService) - oder wenn du nur die Standardedition hast, würde ich vorschlagen, wechsle besser auf den FB Server, der kostet nicht wesentlich mehr zu installieren als ein Embedded System. WEnn Du Sorgen wegen anderer Firebird-Instanzen hast, dann installier dir deine eigene mit eigenem Port,... dann passiert da nix. Dann kannst Du das Backup auch mit gbak auf der Kommandozeile machen (während dein Programm läuft).

himitsu 19. Jul 2023 17:01

AW: Firebrid Embedded: Backup der DB-Datei
 
Viele DB-Server registrieren sich beim VSS.
Vorm Snapshot schreibt die DB dann alles konsistent in die Datei.

Vielleicht ist diese "Speicher-Funktion" auch im Embeddet als Function oder DB-Anfrage auslösbar?

IBExpert 20. Jul 2023 12:25

AW: Firebrid Embedded: Backup der DB-Datei
 
Zitat:

Zitat von BlueStarHH (Beitrag 1524723)
Hallo,

ich benutze Firebrid Embedded mit einer lokalen Datenbankdatei. Kann ich nun einfach (während mein Delphi-Programm läuft, dass diese DB nutzt) mit dem Windows-Explorer die Dantenbankdatei kopieren? Oder könnte die Datei dann defekt sein? Was kann ich sonst ein Backup machen, wenn das Delphi-Programm dauerhaft laufen muss und nicht beendet werden darf?

ganz simpler trick der auch mit embedded gehen sollte:

create shadow 1 'C:\pfad\dbshadow.fdb';
commit;
drop shadow 1 preserve file; --geht nur ab fb3, bei fb<=25 geht das auch, aber man braucht ein update auf rdb$files dazwischen
commit;

und wie schon gesagt wurde:

besser nicht offene datei sichern, das kann datenmüll ergeben in der kopie aber noch schlimmer auch die orginal datenbank datei kann dabei unter hoher last geschrottet sein, wenn da windows meint, was cachen zu müssen, was firebird so nicht mag und der ganze prozess dann zum beispiel wegen filesystemerror wie platte voll oder sonstwas gar nicht zuende laufen kann.

aber unabhängig davon, auch wenn beim embedded keine gbak.exe dabei ist im zip, du kannst die 32 oder 64 bit version dazu aus dem normalen fbserver nehmen und dann das backup direkt mit dem dateipfad als connectionstring starten. falls erforderlich müsstest du dabei noch in einer firebird.conf ab fb3 dazu dann classic eintragen, dann kann auch auf dem embedded mehr als ein prozess aktiv sein. falls du einen älter version als fb3 im einsatz hast, geh dann besser gleich auf fb3 oder fb4, hat eigentlich nur vorteile.

shadow ist das schnellste verfahren, gbak aber zB wegen versionswechsel, aber auch zur integritätsprüfung beim restore der saubere weg.

BlueStarHH 20. Jul 2023 12:43

AW: Firebrid Embedded: Backup der DB-Datei
 
Danke an alle!

"create shadow" funktioniert wunderbar und passt für meinen Anwendungsfall am besten!


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz