私は、ライブバックアップとリストアスクリプトを設定して、メインサーバと予備サーバで「複製」されたファイアバードDBを持つようにしています。 バックアップは元気:fbsvcmgrでFirebird 2.5を復元する
"C:\Program Files\Firebird\Firebird_2_5\bin\nbackup" -B 0 "D:\testdb\LABORATORY_DB.FDB" D:\testdb\lab_FULL.fbk -user SYSDBA -pass masterkey -D OFF
コピーファイルをリモートサーバに同様:
net use R: \\fbserv2\reserve
xcopy /Y D:\testdb\lab_FULL.fbk R:\
しかし、リモート側で復元
"C:\Program Files\Firebird\Firebird_2_5\bin\fbsvcmgr.exe" fbserv2:service_mgr -user SYSDBA -password masterkey -action_nrest -dbname d:\reservedb\LABORATORY_DB.FDB -nbk_file d:\reserve\lab_FULL.fbk
は、エラーの原因となった:
Error (80) creating database file: d:\reservedb\LABORATORY_DB.FDB via copying from: d:\reserve\lab_FULL.fbk
データベースを復元する唯一の方法は、復元前に古いd:\ reservedb \ LABORATORY_DB.FDBを手動で削除することです。 GBAKにはrestorig dbファイルを上書きするオプションがありますが、fbsvcmgrはそうではないようです。他の選択肢はありますか?私は何か見落としてますか?