AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbank ist read-only nach nbackup lock
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank ist read-only nach nbackup lock

Ein Thema von romankassebaum · begonnen am 20. Dez 2012 · letzter Beitrag vom 24. Dez 2012
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von romankassebaum
romankassebaum

Registriert seit: 11. Jun 2011
21 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Datenbank ist read-only nach nbackup lock

  Alt 20. Dez 2012, 12:21
Datenbank: Firebird • Version: 2.5.1 • Zugriff über: AnyDAC
Hallo zusammen,

ich sichere eine Datenbank mit nbackup. Dazu nutze ich die Option -L, die die Datenbank locked. Nach dem locken kopiere ich die Datenbank und unlocke sie (-N).

Obwohl die Firebird-Dokumentation sagt, dass die Datenbank weiterhin beschreibbar ist (“Locking” means here that the main database file is frozen temporarily, not that no changes can be made to the database), bekomme ich eine Fehlermeldung (no permission for read-write access to database), falls ich mich während des Kopiervorgangs mit der Datenbank verbinde.

Hat jemand eine Idee, wo das Problem liegen könnte?

--
Roman
Roman Kassebaum
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#2

AW: Datenbank ist read-only nach nbackup lock

  Alt 21. Dez 2012, 06:37
Hallo Roman,

das sollte schon klappen. Wenn sich eine Datenbank im Locked Zustand befindet, dann werden Änderungen nach dem -L in ein oder mehrere Delta-Files geschrieben dann beim -N wieder mit der Hauptdatenbankdatei gemerged werden.

Ich kann das auch nicht wirklich so nachstellen, d.h. bei mir funktioniert es. Es gibt zwar die Möglichkeit, dass man den Ort für die Delta-Files ändert und hiermit ev. in ein Berechtigungsproblem auf Dateisystemebene reinfällt, aber ich bezweifle, dass du etwas in diese Richtung gemacht hast? http://www.firebirdsql.org/manual/nb...deltafile.html

Ist das unter Windows oder Linux?
  Mit Zitat antworten Zitat
Benutzerbild von romankassebaum
romankassebaum

Registriert seit: 11. Jun 2011
21 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

AW: Datenbank ist read-only nach nbackup lock

  Alt 21. Dez 2012, 07:29
Hallo Thomas,

mir sind drei Dinge aufgefallen.

1. Das Sweep-Intervall ist 0, Sweepen wird manuell in der Nacht aufgerufen. Das sollte eigentlich keine Auswirkungen haben.
2. Der Server ist ein Windows 2008 Server. Dadurch hat Firebird standardmäßig den direkten Zugriff auf die Datenbank (-D on). Das sollte aber auch kein Problem an.
3. Es ist keine Deltadatei definiert. Ich habe bisher gedacht, dass die Deltadatei automatisch definiert ist. Ich habe das jetzt einmal nachgeholt (alter database add difference file 'path-and-filename').

--
Vielen Dank,

Roman
Roman Kassebaum
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#4

AW: Datenbank ist read-only nach nbackup lock

  Alt 21. Dez 2012, 10:16
Die Delta-Datei, sofern nicht anders angegeben, kommt in das selbe Verzeichnis wie die Datenbankdatei. Das sollte eigentlich nicht der Grund sein. Kann es sein, dass vielleicht dein Kopier/Backup-Tool die Datei dann auf Read-Only setzt?
  Mit Zitat antworten Zitat
Benutzerbild von romankassebaum
romankassebaum

Registriert seit: 11. Jun 2011
21 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#5

AW: Datenbank ist read-only nach nbackup lock

  Alt 21. Dez 2012, 13:56
Hallo Thomas,

Du hast Recht, das Kopiertool verursacht das Problem. Ich kopiere mit der Copy File Action des FinalBuilder Server. Stattdessen versuche ich jetzt die Robocopy Action.

--
Vielen Dank,

Roman
Roman Kassebaum
  Mit Zitat antworten Zitat
Benutzerbild von romankassebaum
romankassebaum

Registriert seit: 11. Jun 2011
21 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#6

AW: Datenbank ist read-only nach nbackup lock

  Alt 21. Dez 2012, 17:16
Robocopy geht auch nicht, ich habe jetzt ein selbst geschriebenes Tool genommen, welches funktioniert.

--
Roman
Roman Kassebaum
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#7

AW: Datenbank ist read-only nach nbackup lock

  Alt 22. Dez 2012, 09:30
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#8

AW: Datenbank ist read-only nach nbackup lock

  Alt 22. Dez 2012, 09:58
Sollte das nicht direkt in Firebird abgefangen werden? Immerhin erwähnt die Dokumentation, daß eine gelockte Datei beliebig kopiert werden kann. Wenn nun einige anerkannte Kopiermechanismen diese Datei während des Kopiervorgangs als Read-Only markieren (was ja durchaus angemessen ist), dann sollte Firebird damit umgehen können.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#9

AW: Datenbank ist read-only nach nbackup lock

  Alt 22. Dez 2012, 10:08
Hallo Uwe,

ich denke, wir sprechen hier von dem Read-Only Attribut auf OS Dateiebene und nicht von dem FB-spezifischen Read-Only Flag.

lg,
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#10

AW: Datenbank ist read-only nach nbackup lock

  Alt 22. Dez 2012, 11:56
ich denke, wir sprechen hier von dem Read-Only Attribut auf OS Dateiebene und nicht von dem FB-spezifischen Read-Only Flag.
Genau das meine ich ja. Irgendwo in Firebird wird ja auf Read-Only abgeprüft und offenbar eine neue Verbindung verweigert. Dies sollte aber problemlos möglich sein, da Firbird auf die gelockte Datei ja sowieso nicht schreiben will. Insofern sollte ein Read-Only Flag auf OS-Ebene bei einer gelockten Datei auch durchaus zulässig sein.

Ich weiß nicht, welche Funktion die Finalbuilder Action benutzt (vermutlich ein simples CopyFile), aber RoboCopy ist nun nicht so ungewöhnlich als Backup-Lösung. Es gibt m.W. auch keine Option, mit der man das Setzen des Read-Only Attributs verhindern kann.

Das in diesem durchaus plausiblen Fall eine Fehlermeldung beim Verbinden mit Firebird kommt, ist zumindest etwas unerwartet.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:40 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