如何在版本控制下获取大型遗留数据库

时间:2011-12-15 13:55:08

标签: version-control sql-server-2008-r2 fluent-migrator

我有一个继承的大型遗留项目,其中没有数据库的版本控制。 我想创建流畅的迁移并将它们置于源代码管理之下,以便将来管理它。

我的问题是项目规模庞大。它包含6个独立的数据库。每个数据库都包含很多业务逻辑。 ~120,000个存储过程,触发器和&观点。 这太难以手工完成了。

有没有办法从空数据库生成流畅的迁移到生产快照?

1 个答案:

答案 0 :(得分:2)

如果数据库允许创建(可创建的)脚本,您应该能够使用嵌入式脚本功能

我建议拆分成不同的迁移程序集(对于每个数据库)并使用例如一个基本命名空间(你只有1个向上/向下执行嵌入式脚本,如果你有,你应该可以使用fluentmigrationts语法,例如在名称空间_1中用于将来的更改

有关embeddedscript用法的信息,请参阅http://tommarien.github.io/blog/2011/12/18/fluentmigrator-part-ii

我希望这会有所帮助,但需要一段时间才能解决基本命名空间问题。