Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 将数据迁移到同一文件组中的其他文件对空文件的性能影响_Sql_Sql Server 2005_Sqlperformance - Fatal编程技术网

Sql 将数据迁移到同一文件组中的其他文件对空文件的性能影响

Sql 将数据迁移到同一文件组中的其他文件对空文件的性能影响,sql,sql-server-2005,sqlperformance,Sql,Sql Server 2005,Sqlperformance,我们目前有一个数据库位于15000 RPM驱动器上,它只是一个日志数据库,我们希望将其移动到10000 RPM驱动器。虽然我们可以轻松地分离数据库、移动文件并重新连接,但这将导致我们试图避免的小中断 因此,我们正在考虑使用DBCC ShrinkFile和EMPTYFILE。我们将在10000 RPM驱动器上创建一个数据和一个事务文件,该文件略大于15000 RPM驱动器上的现有文件,然后使用EMPTYFILE执行DBCC ShrinkFile以迁移数据 这会产生什么样的影响?为什么不使用日志传送

我们目前有一个数据库位于15000 RPM驱动器上,它只是一个日志数据库,我们希望将其移动到10000 RPM驱动器。虽然我们可以轻松地分离数据库、移动文件并重新连接,但这将导致我们试图避免的小中断

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


这会产生什么样的影响?

为什么不使用日志传送。在10.000 rpm磁盘上创建新数据库。设置日志从15K RPM的db传送到10k RPM的db。当两个数据库都处于同步停止日志传送状态,并以15K RPM切换到数据库时。

我尝试过这种方法,但运气不好。我曾经有过文件无法清空的实例,因为它是主文件组中的主文件,但我也有过它工作完全正常的实例


不过,它在工作时确实在数据库中持有大量锁。如果您试图在运行最终用户查询的实时生产系统上执行此操作,请忘记它。他们会遇到问题,因为这需要一段时间。

这是一个连接到SAN的系统,还是一个直连存储?如果是SAN,则执行SAN端到新raid组的迁移,服务器将永远不会知道发生了更改。

这真的有效吗?应该有效。docs女士说没有影响,但我不相信这是真的,尽管影响很小是有可能的。可能只是麻烦太多了。我们希望做最小的改变,这将需要一个新的数据库和不断变化的东西。我将不得不记住这一点,为下一次出现。谢谢