Hi,
du machst also ein Backup der Datenbank, indem Du die Datei (*.fdb) einfach kopierst? Das ist natürlich absolut tödlich! So etwas darst Du niemals bei einem
SQL-Server machen, denn es ist nie klar, ob der Server noch auf die
DB zugreift. WEnn das der Fall ist, kann es passieren, dass Du die
DB zerstörst. Ein korrektes Backup kannst Du nur durch die Verwendung der Admin-Tools machen, z.B. gbak oder die Admin-Komponenten (IBBackupService). Die Backupdatei kannst Du dann nach belieben kopieren.
Eine nicht abgeschlossene Transaktion ist bei weitem nicht mit einem neuen Programmstart erledigt:
Beim Start einer Transaktion fertig
FB quasi eine "Kopie" der Daten an. Kopie ist in " weil es keine richtige Kopie ist, mehr ein View auf die Daten. Wenn nun eine weitere (oder entsprechend mehrere) Transaktion anschließend gestartet werden, muss die Info über diese eine Transaktion immer mitgeschleift werden. Das erfordert mit der Zeit einen immer höheren Aufwand, was sich mit der Zeit auf die Geschwindigkeit auswirkt. Solche Transaktionen kannst Du nur dadurch wegbekommen, wenn Du einen Backup-Restore Zyklus machst, dann werden die begonnenen und nicht beendeten Transaktionen weggelöscht.
GRüße
Lemmy