删除(合并)SQL Server的数据库辅助数据文件

时间:2010-02-02 11:51:52

标签: sql-server-2008 database-restore data-files

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

这一切都可行吗?

2 个答案:

答案 0 :(得分: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;

答案 1 :(得分:0)

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