Search code examples
windowsdatabase-migrationfirebirdfirebird-3.0programdata

Safe to clean out C:\ProgramData\firebird folder when FB offline?


Is it safe to clean out the contents of the C:\ProgramData\firebird folder, i.e. wipe it, when the Firebird service (superserver, v3.0) is not running?

I understand that it contains lock tables etc. so should not be touched while FB is running. But it's not clear to me if it can be wiped safely when FB is not running, or if it contains data that can be vital when FB starts up again.

My situation is that I'm migrating a VM with an FB installation. Migration has been done like this, due to practical reasons (uptime vs. file transfer & VM conversion time):

  1. Snapshot of source VM, i.e. nightly backup is copied to new location. Source stays up and running. Copy process takes about 1 day. (We have the databases locked with nbackup when nightly snapshot is taken).

  2. Snapshot is unpacked at target location, converted from VMWare to HyperV and brought online for additional reconfig and system testing.

  3. A few days pass.

  4. Both source and target Firebird services are stopped, so no database activity is going on anywhere.

  5. Sync files from source to target, including database files. This file transfer is much smaller then in step 1 so it can be done during offline time.

In step 5 I find diffs in the C:\ProgramData\firebird folder, and I'm wondering what would be the best approach:

A) Wipe the folder at target.

B) Sync so target has the same content as source.

C) Leave target as is.

Please note that when FB service is started again at target, the database files will be identical with those at the source at the time of FB shutdown, and probably won't "match" the contents of C:\ProgramData\firebird at target. I would assume that this fact rules out option C).


Solution

  • The files in C:\ProgramData\firebird are only used during runtime of the Firebird server and contain transient data. It should be safe to delete these files when Firebird is not running.

    In other words, when migrating from one server to another, you do not need to migrate the contents of C:\ProgramData\Firebird.