Hi, I get your point. 

But I wonder what can happen when we don't kill the existing clients before 
restoring with the same database file name.

Actually I had a bad exprience on this :)

-One client remained active after a restore operation and continued to run on 
the newly restored database. (It's firebird 2.5.1)

-It generated ID numbers which was already consumed with others.
-It did not generate any errors even on uniquely indexed rows, the records it 
created were just not reachable anymore. 

So I think every client should be disconnected before restoring and this should 
be a very strict rule for preventing any data loss or conflicts, maybe firebird 
developers can confirm this.







--- In [email protected], Elmar Haneke <elmar@...> wrote:
>
> 
> > I have a question on backup/restore.
> >
> > Think of a firebird classic on a linux box.
> >
> > -Do a backup with existing attachments
> > -After backup, Rename the old gdb file to something else
> > -Restore the backup file with the original gdb name.
> 
> You have to kill all connected clients before starting backup and you
> have to prevent them from reconnecting until restore is complete. Else
> at least the updates done while backup/restore are lost.
> 
> In Addition existing connections should prevent you from renaming the
> database.
> 
> As an alternative you should consider if restore&rename is really
> required. Just run the backup and do an restore to an dummy database to
> verify backup file. It is not required to rebild database on each backup.
> 
> 
> Elmar
>


Reply via email to