Firebird 2.1 数据库缺少监控表可以添加吗?
Posted
技术标签:
【中文标题】Firebird 2.1 数据库缺少监控表可以添加吗?【英文标题】:Firebird 2.1 database is missing the monitor tables can they be added? 【发布时间】:2016-03-25 18:29:34 【问题描述】:我发现一些 Firebird 2.1 数据库缺少监控表,即 (MON$ATTACHMENTS)。 有没有办法添加它们?
我尝试插入它们,但它们显示为普通表格。
【问题讨论】:
【参考方案1】:监控表等功能取决于 Firebird 数据库的磁盘结构 (ODS) 版本。您的数据库可能仍然是旧的 ODS 版本(11.0 或更早版本,例如 Firebird 2.0 或更早版本)。您需要备份和恢复数据库以将其升级到 Firebird 2.1 (ODS 11.1) 的 ODS。这将添加监控表。
这也记录在 2.1.7 发行说明中,Monitoring tables 部分:
虚拟监控表仅存在于 ODS 11.1(及更高版本)数据库中,因此需要通过备份/恢复进行迁移才能使用此功能。
如果您要升级,请考虑升级到 Firebird 2.5。
【讨论】:
马克,您一如既往地给出了正确的解决方案。再次感谢您的帮助。【参考方案2】:或者,它们仅在您以 sysdba 或数据库所有者身份连接时可见
【讨论】:
监控表可供所有用户使用,但他们只会看到有关其当前连接的信息(至少:在 Firebird 2.5 中。也不确定 2.1)。以上是关于Firebird 2.1 数据库缺少监控表可以添加吗?的主要内容,如果未能解决你的问题,请参考以下文章
Firebird 2.1 在某些数据库表中存储大量行是不是有效?
如何在 Firebird 2.1 中临时禁用表中的所有约束?
如何测量 Firebird 2.1 数据库上 blob 占用的空间量?