通过将数据迁移到同一文件组中的其他文件来清空空文件的性能影响

Jos*_*sef 4 sql sql-server-2005 sqlperformance

我们现在有一个数据库,它位于15000 RPM驱动器上,它只是一个日志记录数据库,我们希望将其移动到10000 RPM驱动器.虽然我们可以轻松分离数据库,移动文件并重新附加,这将导致我们试图避免的轻微中断.

所以我们正在考虑使用DBCC ShrinkFile with EMPTYFILE.我们将在10000 RPM驱动器上创建一个比15000 RPM驱动器上的现有文件略大的数据和事务文件,然后执行DBCC ShrinkFile with EMPTYFILE迁移数据.

会产生什么样的影响?

Bre*_*zar 6

我试过这个并且好运.我有一些文件无法清空的实例,因为它是主文件组中的主文件,但我也有过完全正常工作的实例.

但它确实在数据库中存在巨大的锁定.如果您尝试在运行最终用户查询的实时生产系统上执行此操作,请将其忘记.他们会遇到问题,因为这需要一段时间.