适用于Oracle的SQL Compare-Like工具?

时间:2020-03-05 18:48:39  来源:igfitidea点击:

我们是一个.NET团队,出于许多我不愿提及的原因,他们使用Oracle DB。但是部署一直很艰难。我们通过记录在开发过程中运行的所有脚本来手动跟踪每个版本中对模式的所有更改。

现在,如果开发人员在运行脚本后忘记将其签入源代码管理,而这在迭代结束时并不罕见,那么我们将感到非常头疼。

我听说Red-Gate的SQL Compare可能解决了这类问题,但是它仅支持SQL Server。有人知道针对Oracle的类似工具吗?我一直找不到。

解决方案

回答

TOAD是用于Oracle开发的出色通用工具,我认为基本版本具有类似的功能。我们可以下载试用版(请确保我们没有获得旧的TOAD免费版本,即大约4年的旧版本)

如果我们不想购买工具,并且需要更少的闪存,则可以轻松滚动自己的闪存。我刚刚找到了适用于Oracle的Schema Compare Tool,它看起来非常简单,并且具有很好的基线概念。如果我们要跟踪自上次代码签入以来的更改,这非常方便。这样,我们可以发现可能已手动对多个DB进行的更改,但未进行记录。

PS:" Red-Gate的SQL比较"演示确实确实非常不错……但是声音使我震惊……听起来像是BBC的纪录片。

回答

我们可以使用各种工具,尽管我自己没有使用过任何工具,所以我对它们没有任何评论,但是我们可以使用的另一个"窍门"是在DDL事件上创建触发器,因此我们基本上可以捕获(到表,日志文件等等)部署之间所做的任何更改。

DDL触发器

回答

马克,我希望能够轻松地同步两个数据库架构。具体来说,这个演示对我来说就像天堂。

回答

搭便车的人

如果我们愿意花一些钱,TOAD具有"比较模式"功能,可以满足需求。它将报告差异,并生成一个迁移脚本以使其中一个与另一个保持一致。

我从未使用过该脚本,因此无法担保它,但是我已使用它来确保我们的构建脚本完整。

回答

OraPowerTools将完成这项工作。
Oracle SQL Developer中也有一个"差异向导",但是我还没有使用过。

回答

请查看Oracle Enterprise Manager变更管理包,它是针对此的Oracle工具:

http://www.oracle.com/technology/products/oem/pdf/ds_change_pack.pdf

我们可以在那里尝试:

http://www.oracle.com/technology/software/products/oem/index.html

回答

适用于Oracle的Red Gate Schema Compare现在已经发布!

http://www.red-gate.com/products/schema_compare_for_oracle/index.htm

有28天的全功能免费试用版。请放手,让我们知道反馈!