2010-03-16 54 views
1

我試圖通過代碼備份我的Firebird 2.5數據庫文件:Firebird .NET:數據庫備份不起作用(小文件)

FbBackup backupSvc = new FbBackup(); 
backupSvc.ConnectionString = MyConnectionManager.buildConnectionString(); 
backupSvc.BackupFiles.Add(new FbBackupFile(backupPathFilenameAndExtension, 2048)); 
backupSvc.Verbose = true; 
backupSvc.Options = FbBackupFlags.IgnoreLimbo; 

backupSvc.Execute(); 

數據庫被保存到指定目錄。但是,文件保存文件只有168kB大。原始數據庫大小接近7MB。出了什麼問題?

謝謝, Norbert

回答

1

備份文件通常比原始數據庫文件小得多。例如,不包含索引或舊記錄版本。
檢查此備份文件是否正確的最佳方法是將其恢復並驗證數據和元數據。
您也可以嘗試使用gbak進行備份並比較結果。

+0

原始數據庫文件幾乎爲空,它只包含一堆表(〜50),約束和索引。另外,IBExpert說備份文件不是有效的數據庫文件。 – Norbert 2010-03-16 20:45:27

+0

備份文件*不是數據庫的副本。它具有不同的結構並用於不同的目的。它必須被恢復,才能被諸如IBExpert之類的客戶端工具訪問。提示:搜索gbak以瞭解firebird中的備份。 – 2010-03-17 12:09:30

+0

謝謝!現在我懂了。 :) – Norbert 2010-03-17 15:29:03