Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Sicherung und Update von Firebird-DB (https://www.delphipraxis.net/167720-sicherung-und-update-von-firebird-db.html)

TheMiller 14. Apr 2012 20:19

Datenbank: Firebird • Version: 2.1 • Zugriff über: UniDAC

Sicherung und Update von Firebird-DB
 
Hallo,

Ich mache jetzt doch mal einen eigenen Thread für die Updatefragen auf.

Also meine Frage ist jetzt, wie ich ein korrektes und beim Kunden automatisiertes Backup/Update einer Firebird-DB realisieren kann. Folgende Situation:

Ich habe ein Programm, welches von einem unbekannten Personenkreis heruntergeladen wurde. Nun will ich, dass ein Update auf Firebird 2.5 durchgeführt wird. Wie kann ich die Daten beim Programmupdate komeplett sichern? Ich verwende Generatoren und Trigger für auto-increment. Mehr eigentlich nicht.

Zudem habe ich damals gedacht, dass ein Update von Firebird einfach durch Ersetzen der embedded-Dateien funktioniert und so vielleicht keine echte 2.1-Datenbank.

Welche Vorgehensweise könnt ihr mir empfehlen? Dadurch, dass ich meine Kunden/Benutzer nicht kenne, muss alles automatisch ablaufen.

Am meisten bereitet mir die Sache mit den Generaton Sorgen. Diese dürfen müssen ja wieder den aktuellen Wert aus der DB bekommen, da er sonst wieder bei 1 startet und so der falsche Primary Key verwendet wird.

Ichnmöchte folgendes erreichen:
1. Daten sichern
2. Neue 2.5-db erstellen
3. Daten wieder einspielen

Vielen Dank für eure ständige Hilfe ;)

Grüße!

jsheyer 14. Apr 2012 20:47

AW: Sicherung und Update von Firebird-DB
 
Wenn es darum geht die Datenbank Version zu aktualisieren, dann kenne ich nur das Verfahren mit gbak.
Das ist die einzige mir bekannte Möglichkeit ein Backup der DB herszustellen um diese dann mit einer aktuelleren
Version von Firebird zu restoren.
Bei gbak wird der komplette Inhalt der DB gesichert, also auch die Generatoren.

Gruß
Jörg

Hansa 15. Apr 2012 00:23

AW: Sicherung und Update von Firebird-DB
 
Zitat:

Zitat von jsheyer (Beitrag 1161889)
Bei gbak wird der komplette Inhalt der DB gesichert, also auch die Generatoren.

Das geht aber mit Extract Metadata von IBExpert auch.

Und da steht dann so etwas drin :

Delphi-Quellcode:
CREATE GENERATOR GEN_ID;
SET GENERATOR GEN_ID TO 1738293;
Werden auch noch die Data-Tables exportiert, dann passt schon alles.

Empfehlenswert ist sowieso auch, nur einen Generator zu benutzen.

RWarnecke 15. Apr 2012 00:55

AW: Sicherung und Update von Firebird-DB
 
Was spricht dagegen nur die Clientdateien von Firebird auszutauschen ? Ich kann ja mit den Firebird 2.5 Client auf eine Datenbank drauf zugreifen, die mit Firebird 2.1 erstellt worden ist.

TheMiller 15. Apr 2012 01:39

AW: Sicherung und Update von Firebird-DB
 
Hi!

Zitat:

Zitat von Hansa (Beitrag 1161919)
Das geht aber mit Extract Metadata von IBExpert auch.

Ja schon, aber das Backup muss ja voll-automatisch bei den Leuten durchgeführt werden, die das Programm runtergeladen haben. Ich kann das schon, aber die Endanwender doch nicht.

Zitat:

Zitat von RWarnecke (Beitrag 1161922)
Was spricht dagegen nur die Clientdateien von Firebird auszutauschen ? Ich kann ja mit den Firebird 2.5 Client auf eine Datenbank drauf zugreifen, die mit Firebird 2.1 erstellt worden ist.

Das stimmt, aber ich möchte eine komplett neue und reine Datenbank erstellen, da ich heute nicht mehr weiß, wie ich sie damals erstellt habe (in Bezug auf default characterset und UTF8) - damit habe ich nämlich gerade Probleme. Und außerdem sind dann die Features der 2.5er-Version nicht alle verfügbar, weil die Datenbank selbst noch 2.1 ist und sich zwischen 2.1 und 2.5 einiges im Filesystem geändert haben soll. Da möchte ich mir jetzt einmal die Mühe machen.

RWarnecke 15. Apr 2012 02:02

AW: Sicherung und Update von Firebird-DB
 
Zitat:

Zitat von DJ-SPM (Beitrag 1161924)
Das stimmt, aber ich möchte eine komplett neue und reine Datenbank erstellen, da ich heute nicht mehr weiß, wie ich sie damals erstellt habe (in Bezug auf default characterset und UTF8) - damit habe ich nämlich gerade Probleme.

Wie äußern sich diese Probleme ? Ich habe es bei zwei Datenbanken von mir auch gemacht und bis jetzt habe ich keine Probleme.

Zitat:

Zitat von DJ-SPM (Beitrag 1161924)
Und außerdem sind dann die Features der 2.5er-Version nicht alle verfügbar, weil die Datenbank selbst noch 2.1 ist und sich zwischen 2.1 und 2.5 einiges im Filesystem geändert haben soll. Da möchte ich mir jetzt einmal die Mühe machen.

Mmmh, komisch. :gruebel: Ich habe gedacht, dass beim Firebird SuperServer die Datenbank automatisch mit konvertiert wird.

TheMiller 15. Apr 2012 11:53

AW: Sicherung und Update von Firebird-DB
 
Guten (Morgen)/Tag!

Zitat:

Zitat von RWarnecke (Beitrag 1161927)
Wie äußern sich diese Probleme ? Ich habe es bei zwei Datenbanken von mir auch gemacht und bis jetzt habe ich keine Probleme.

Ich habe Probleme beim Speichern von UTF-8 Strings in einem Blob-Feld (Subtype Text Charsett UTF8). Gespeichert werden nur "????" statt Unicode-Zeichen. A-Z wird gespeichert. Ich verwende UniDAC. Hier der Thread dazu: Mein UTF8-Fehler

Zitat:

Zitat von RWarnecke (Beitrag 1161927)
Mmmh, komisch. :gruebel: Ich habe gedacht, dass beim Firebird SuperServer die Datenbank automatisch mit konvertiert wird.

Ich bin kein Firebird-Experte. Ich benutze nicht den SuperServer, sondern die Embedded-Version. Vielleicht macht das einen Unterschied. Die von mir angedachte Vorgehensweise kam aus dem o.g. Thread. Ich würde gerne mit (jetzt) erweitertem Wissen eine komplett neue und saubere Datenbank anlegen. In dem anderen Thread wird vermutet, dass der UTF-8-Fehler von der Komponente kommt. Mal sehen.

mkinzler 15. Apr 2012 13:21

AW: Sicherung und Update von Firebird-DB
 
Zitat:

Ich habe gedacht, dass beim Firebird SuperServer die Datenbank automatisch mit konvertiert wird.
Nein die ODS wird nicht automatisch angepasst. Aus gutem Grund. Man muss die DB neu erstellen, entweder per Backup/Restore order bei Neuerzeugung per Skript ( Extract Metadata). Wobei ich dabei Backup/Restore vorziehen würde, den das ist um einiges schneller und auch automatisiert möglich.
Zitat:

Empfehlenswert ist sowieso auch, nur einen Generator zu benutzen.
Sehe ich, wie viele anders. Diese Diskussion brauchen wir aber hier nicht noch einmal wiederholen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:28 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