有效地管理多个相同的数据库?

时间:2020-03-05 18:45:13  来源:igfitidea点击:

如果我们在Web应用程序的每个客户端上都有一个数据库,而不是所有客户端都使用一个数据库,那么如何有效地为所有数据库提供更新和增强功能?

在这种情况下,我们如何推出对架构和代码的更改?

解决方案

回答

对我们来说有点困难。我们有一个自定义程序,可以为我们为不同的数据库编写很多sql代码。本质上,它会编写一次代码,然后一遍又一遍地复制代码,以及放置更改数据库命令等。它还确保主键标识等在需要时保持同步。除此之外,我还将研究Red Gate的产品。他们在这里为我们拯救了不止一次。有了它们,我们可以轻松地比较数据库,看看有什么不同。处理多个副本时必须使用。

回答

使用代码生成器/脚本语言来实现原始架构并随时间对其进行更新。

回答

过去,我曾经使用过Red Gate的SQL Packager。该工具的优点在于,它会为我们创建一个Cproject来实际完成工作,因此,如果需要,我们可以扩展默认包的功能以执行其他操作,例如将默认值插入已添加到数据库的新列中最终,我们有了一个不错的工具,可以将其交给技术人员,他们升级多个DB所需要做的就是将其指向数据库并单击一个按钮。

Red Gate还具有一个称为SQL multi-script的产品,该产品使我们可以同时针对多个服务器/数据库运行脚本。我从未使用过此工具,但我想如果我们正在寻找不需要内部打包使用的东西,就可以看看。