如何像MS Access(丢弃删除的数据,重新制作索引等)一样紧凑bifird 2.1数据库?

有办法做到吗?

谢谢!

有帮助吗?

解决方案

通常,无需压缩火鸟数据库:请参阅有关垃圾收集的FB发行说明和名为“ Sweep”的自动(每个数据库配置)操作。几句话,当删除记录或最旧的记录版本时,FB在页面中的空间仅在自由空间变得太小(即定义的百分比)时才要求磁盘空间块。在预定义的交易数量之后,扫描是默认情况下进行的,这是一项昂贵的任务。备份和还原必须作为最后的度假胜地来优化和缩小,因为这也重建并优化了索引,但是通常不需要这种命令和工具来重建索引。

其他提示

唯一的方法是进行备份和还原。

来自 官方常见问题解答

许多用户想知道,当他们从数据库中删除大量记录时,为什么他们不会恢复磁盘空间。

原因是这是一个昂贵的操作,需要大量的磁盘写入和内存 - 就像对硬盘分区进行翻新一样。该数据使用的数据库(页面)部分被标记为空,而火鸟下次需要编写新数据时将其重复使用。

如果磁盘空间对您来说至关重要,则可以通过备份然后还原来恢复空间。由于您正在执行备份以立即恢复,因此明智的选择是使用“抑制垃圾收集”或“不要使用垃圾收集”开关(GBAK中的-G),这将使备份的速度更快。垃圾收集用于清理数据库,并且由于它是一项维护任务,因此通常与备份一起完成(因为备份都必须通过整个数据库进行整个数据库)。但是,您很快就会抛弃该数据库文件,因此无需清理。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top