FireBird 2.5-Datenbank-restore mit gbak und fix_fss_data gibt Fehlerhafte Zeichenfolge
Ich habe noch eine alte Datenbank und ich möchte konvertieren Sie es in FireBird 2.5. Problem tritt auf, wenn die Wiederherstellung der Daten auf Tabellen, welche enthält blob-text-Felder mit der bekannten Frage "gbak: ERROR:Malformed string gbak:Ungültige Daten erkannt"
Schritte durchgeführt:
1) gfix -user SYSDBA -password masterkey f:\dbb.db -shut -Kraft 0
2) gfix -v -full -user SYSDBA -password masterkey f:\dbb.db
3) gbak -v -t -g -ig -user SYSDBA -Y F:\backup.log -password "masterkey" f:\dbb.db F:\dbb1.db
4) gbak -r -v -o -p 16384 -Y F:\log.txt -user SYSDBA -password masterkey "f:\dbb1.db" "f:\new.db" -fix_fss_data win1251 -rep
ersetzt die Zeichen mit win1252,utf8 oder unicode_fss das problem nicht lösen.
Ich habe auch versucht, die Daten zu migrieren durch die Verwendung von InterBase datapump version 3.4.
Schritte:
1) backup der metatable
2) stellen Sie die metatable auf eine neue Datenbank
3) die Migration der Daten durch die Verwendung von InterBase datapump
Fehler "Fehlerhafte Zeichenkette".
Alle Tabellen, auf denen die Fehler auftreten, haben Sie ein Feld vom Typ "BLOB SUB_TYPE 1 SEGMENT SIZE 80"
Ich vermute, dass am Anfang die Datenbank der Zeichensatz WIN1252. Nach, dass jemand verändert den Zeichensatz auf UTF8 geändert und alle Felder definition für charset und collate von WIN1252 auf UTF8. Ansonsten verstehe ich nicht, warum ich diese fehlerhafte string-Fehler. Auch habe ich verstanden, dass dieses problem ist üblich für FireBird 2.0 FireBird 2.5 Migrationen.
Hat jemand eine Idee, wie man dieses Problem lösen?
mit FDBConvert - Microsoft Visual C++ Runtime Library --------------------------- Runtime Error! Programm: F:\a\FDBConvertPortable\FDBConvert.exe R6025 - pure virtual function call 10:44:57 UHR: Es war eine Nachricht, die während der Datenbank-Wiederherstellung: Fehlerhafte string-Ungültige Daten erkannt. Verwendung -FIX_FSS_DATA option
InformationsquelleAutor RBA | 2012-11-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fehlerhaften string-Fehler kommen kann, aus Daten und Sie können dies korrigieren, mit Schalter -fix_fss_d aber es kann auch kommen von Metadaten und verwenden Sie den Schalter -fix_fss_m
link zu firebird gbak-Dienstprogramm
InformationsquelleAutor Hugues Van Landeghem
sogar blöd es klingt, ich befestigt es in dieser Weise:
Sicherung der metatable
erstellen Sie ein restore in eine neue Datenbank-Datei
extrahieren Sie die Daten aus der alten Tabelle mit IBExpert in ein Skript
führen Sie das Skript zum hinzufügen von Daten zu der neuen Datenbank
Keiner der Kombinationen -fix_fss_D oder fix_fss_m mit verschiedenen Zeichensätzen nicht importieren aller Daten in die neue Datenbank. Habe versucht, alle free-und shareware-tools, ohne Ergebnisse.
InformationsquelleAutor RBA