4 performance sql-server-2008 sql-server datafile
我有一个example.mdf
总大小为 1GB的数据库,它存在性能问题。我检查了分配的硬件,它高于要求,我仔细检查了设计,一切看起来都正常,当我查看.mdf
物理位置 ( C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\example.mdf
)中的文件时,我发现数据库被拆分为多个文件example_1.mdf
, example_2.mdf
, example_3.mdf
, 直到example_7.mdf
.
我在同一 SQL Server 上有另一个具有相同问题的数据库文件。
为什么会发生这种情况?这会影响性能吗?如何防止或阻止 SQL Server 拆分我的.mdf
文件?此外,我需要合并回已经拆分的文件。
创建数据库的人是故意这样做的。假设所有数据库文件都属于同一文件组(数据库属性会告诉您这一点),那么您需要做的就是使用 EMPTYFILE 参数执行 DBCC SHRINKFILE。
DBCC SHRINKFILE (Example_1, EMPTYFILE)
GO
ALTER DATABASE MyDatabase REMOVE FILE Example_1
GO
Run Code Online (Sandbox Code Playgroud)
对每个文件执行此操作,所有数据将被放回单个文件中。然后,您可以删除多余的文件。
现在很可能这不会损害您的性能,因此您需要继续调查您遇到性能问题的原因。
归档时间: |
|
查看次数: |
19405 次 |
最近记录: |