Subject Re: [firebird-support] Firebird database portability
Author Helen Borrie
At 04:41 PM 29/11/2006, you wrote:

>http://sotu.berlios.de/Firebird-Embedded-Linux-HOWTO.html
>
>Which is why I asked whether firebird databases were portable...

...and THAT is a different question, again due to your confusion
about the disposition of systems. "Embedding" is a deployment
model...an **application architecture**. You can use the very same
database in an embedded deployment or in a 2-tier client/server
deployment or as the back-end to a webserver.

A *database* is what is created, maintained, accessed, guarded, etc.
by the database management system - a.k.a. the database engine. One
running engine (server) can do all this stuff for multiple
*databases*. Databases are portable, but that doesn't mean that a
byte-for-byte *image* of the database *file* is interpreted the same
way on all *machine* architectures...which is why we talk about
databases being *transportable*.

File-copying databases around is bad practice, in any event, since
uncommitted work and garbage, the transaction counter's current state
and inventory and even the version counter for metadata changes are
stored in the database file. It's not that you *can't* do it, but
that you *shouldn't*. A new deployment should be that - NEW, i.e.
freshly restored or in a transportable backup that's ready to be
freshly restored.

./hb