13

我有一个数据库备份,SQL Server Management Studio 说它包含三个文件:一个.mdf文件、一个.ndf文件和一个.ldf文件。这个辅助数据文件(那个.ndf)是没有明显原因创建的,所以我想完全删除它(当然不会丢失数据),最好是在从备份恢复数据库期间。

这完全可行吗?

4

2 回答 2

14

好的,找到了解决方案。

首先备份数据库。

执行这个:

USE database_name;

然后执行此操作,并替换logical_ndf_file_name为 NDF 文件的逻辑名称(您可以通过 Database->Properties_Files 轻松找到):

DBCC SHRINKFILE('logical_ndf_file_name', EMPTYFILE);
ALTER DATABASE database_name REMOVE FILE logical_ndf_file_name;
于 2010-02-02T13:17:31.643 回答
0

我在成功加载生产过程中运行了空,然后运行了 ndf drop。我认为在与空相同的事务中运行 drop ndf 很重要,以确保数据库不会尝试写入您要删除的文件,但是在清空之后,数据库将文件标记为不可用,这可以通过尝试另一个来证明很快就空了。

于 2016-02-03T20:38:25.697 回答