【发布时间】:2010-11-17 01:35:06
【问题描述】:
RedGate 为 Microsoft SQL Server 制作了一个工具,可让您对两个数据库之间的差异进行快照。它生成更新数据库模式所需的脚本,同时保留数据。
我需要为 Firebird 数据库找到这样的工具。我们以嵌入式方式使用 Firebird,并希望尽可能轻松地将架构更新推送到远程机器。
【问题讨论】:
RedGate 为 Microsoft SQL Server 制作了一个工具,可让您对两个数据库之间的差异进行快照。它生成更新数据库模式所需的脚本,同时保留数据。
我需要为 Firebird 数据库找到这样的工具。我们以嵌入式方式使用 Firebird,并希望尽可能轻松地将架构更新推送到远程机器。
【问题讨论】:
我不知道有哪个 Firebird 工具可以做到这一点。
但是,FlameRobin 允许您提取单个数据库对象或整个数据库的元数据。它还可以创建脚本来重新创建某个数据库对象,包括其依赖项。因此,您可以区分两个数据库创建脚本并将差异保存为起点(可能仍需要一些更改),或者您可以将重新创建脚本用于单个对象及其依赖项。
【讨论】:
This list 包含几个比较工具
【讨论】:
正如@devio 建议的那样,我查看了 IBPhoenix 网站上列出的大号 list of administration tools。在列表中的工具中,仅有两个生成脚本来迁移架构和数据更改的是 XCase 和 Database Workbench。
有人使用过这些工具吗?还有其他我可能错过的吗?
【讨论】:
Embarcadero Change Manager 将在秋季增加对 InterBase 和 Firebird 的支持。阅读有关它的所有信息here。 Change Manager 包括架构存档比较和同步、数据比较、同步和屏蔽以及配置管理。
【讨论】:
请参阅 IBExpert,它也有一个命令行工具,您可以在其中运行专有语言的脚本。您可以比较两个数据库并获取脚本来更新目标数据库,它对依赖项(例如视图)做得很好,它会删除使用视图的每个依赖项,更改视图然后重新创建删除的对象。这也可以在 GUI 中完成,还有很多其他的好东西
【讨论】:
IBPhoenix 网站上的 Firebird 迁移工具位于单独的链接 Contributed Downloads - Migration Tools
【讨论】:
试试 SchemaCrawler link
SchemaCrawler 是一个开源 Java 使用数据库的 API 元数据就像使用普通的一样容易 旧的 Java 对象。
SchemaCrawler 也是一个命令行 输出数据库模式的工具 和可读形式的数据。这 输出被设计成与 以前版本的数据库 架构。
由于它需要 JDBC 驱动程序,因此您还需要以下内容:Firebird JDBC Driver
【讨论】: