从日期开始,如何将开发数据库中的数据移动到生产数据库?

时间:2009-09-25 17:54:48

标签: sql sql-server sql-server-2005

我有一个有两个数据库服务器的应用程序:一个是开发数据库服务器,另一个是生产数据库服务器。很遗憾,几个月前我发布了使用申请,并指向开发数据库。

由于它指向开发数据库,​​所以插入或恢复的所有信息都进入了开发数据库。

我想将从7月到9月进入开发数据库的数据传输到生产数据库。

有办法做到这一点吗?

4 个答案:

答案 0 :(得分:2)

创建一个SSIS包,该包使用开发数据库作为源,生产数据库作为目标,并运行查询以将数据从开发中提取到生产中。

顺便说一句,我们曾经发生过这种情况。

答案 1 :(得分:1)

您可以使用DTSWizard在两个数据库之间传输数据。编写SQL查询以仅提取所需的数据。

编辑:我没有意识到它有一个新名字,SSIS。

这是一个很好的tutotrial for SQL Server 2005 Import / Export Wizard

答案 2 :(得分:1)

这里最大的问题是找出改变了什么。如果你的所有表都有日期时间戳,这应该相当容易。

如果您没有日期时间戳,则必须比较数据。所以让我们调用你的数据库ConsumerData。如果您从应用程序的生产实例指向它的前一天开始备份DEV环境,则可以将其还原为ConsumerDataNew。

有多个数据库比较实用程序(Redgate SQL Compare),可以比较数据库中的表(ConsumerData和ConsumerDataNew),并将结果作为SQL语句提供,然后可以在生产中运行。

当然,您必须确定Dev中的哪些记录是由开发人员制作的,哪些是由生产应用程序制作的。

答案 3 :(得分:0)

Red-Gate有一个名为SQL Compare的工具,用于比较架构和SQL数据比较以实际比较数据。

这可能会有所帮助。