gpt4 book ai didi

firebird - 拆分 firebird 数据库文件

转载 作者:行者123 更新时间:2023-12-01 11:00:27 25 4
gpt4 key购买 nike

我有一个接近 4GB 文件系统限制大小的 firebird 数据库。如何将单个数据库文件拆分为多个文件?

最佳答案

对于单个文件数据库,Firebird 数据库可以跨越数 TB。 InterBase 6.0 手册中提到了 4GB 的限制,但该限制仅适用于不支持更大文件的文件系统。据我所知,几乎所有文件系统都支持比这更大的文件(一个明显的异常(exception)当然是 FAT(32))。另见 Firebird Database Limits .

如果确实需要拆分文件,则需要添加辅助文件。有两种方法可以解决这个问题:

1) 使用ALTER DATABASE添加其他文件:

ALTER DATABASE ADD FILE '<path-to-file>' LENGTH <number> PAGES 
STARTING AT PAGE <number>

请注意,指定 STARTING AT PAGE已经创建的 number 将在分配下一页时简单地创建文件。所以它不会从指定的页面开始,而是从<current page count>开始。 + 1. 另请参阅 InterBase 6.0 语言引用(可从 http://www.firebirdsql.org/en/reference-manuals/ 获得)的第 22 页或 Helen Borrie 的 The Firebird Book 的第 238 - 240 页。

2)(如果需要拆分现有数据库):备份数据库并在指定多个文件和每个文件的大小的同时恢复它:

gbak -C <backupfile> <file1> <maxsize of file1> 
<file2> <maxsize of file2> .... <fileN>

对于您未指定大小的最后一个文件,它将一直增长直到达到文件系统限制(如果有),在这种情况下,您将需要如上所述添加额外的辅助文件。另请参阅 Interbase 6.0 操作指南 第 162 页(也可从 http://www.firebirdsql.org/en/reference-manuals/ 获得)或 The Firebird Book 第 825 - 827 页。

但正如我所说:在几乎所有(现代)文件系统上,4 GB 的限制都不适用。

关于firebird - 拆分 firebird 数据库文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11456876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com