删除失效文件组 (SQL Server)

本主题说明如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 2012 中删除失效的文件组。

本主题内容

  • 开始之前:

    限制和局限

  • 建议

    安全性

  • 若要删除失效的文件组,请使用:

    SQL Server Management Studio

    Transact-SQL

开始之前

限制和局限

  • 本主题与包含多个文件或文件组的 SQL Server 数据库相关;在简单模式下,仅与包含只读文件组的数据库相关。

  • 删除离线文件组后,文件组中的所有文件都将失效。

建议

  • 如果未还原的文件组再也不用还原了,您可以将该文件组从数据库中删除,从而使文件组失效。 失效文件组再也不能还原到此数据库,但其元数据仍然保留。 文件组失效后,可以重新启动数据库,恢复数据库会使数据库在还原的文件组中保持一致。

    例如,可以选择让文件组失效来解决由于数据库中不再需要的脱机文件组而导致的事务延迟。 此文件组失效之后,由于此文件组的脱机而延迟的事务将脱离延迟状态。 有关详细信息,请参阅延迟的事务 (SQL Server)

安全性

权限

需要对数据库具有 ALTER 权限。

用于“返回首页”链接的箭头图标[Top]

使用 SQL Server Management Studio

删除失效的文件组

  1. 在**“对象资源管理器”**中,连接到 SQL Server 数据库引擎实例,然后展开该实例。

  2. 展开**“数据库”,右键单击要从其中删除文件的数据库,再单击“属性”**。

  3. 选择**“文件”**页。

  4. 在**“数据库文件”网格中,选择要删除的文件,单击“删除”,然后单击“确定”**。

  5. 选择**“文件组”**页。

  6. 在**“行”网格中,选择要删除的文件组,单击“删除”,然后单击“确定”**。

用于“返回首页”链接的箭头图标[Top]

使用 Transact-SQL

删除失效的文件组

  1. 连接到数据库引擎。

  2. 在标准菜单栏上,单击**“新建查询”**。

  3. 将以下示例复制并粘贴到查询窗口中,然后单击**“执行”**。 (**注意:**此示例假定文件和文件组已存在。 若要创建这些对象,请参阅 ALTER DATABASE 和文件组选项主题中的示例 B。)第一个示例通过使用具有 REMOVE FILE 子句的 ALTER DATABASE 语句,从失效的文件组中删除 test1dat3 和 test1dat4 文件。 第二个示例通过使用 REMOVE FILEGROUP 子句,删除失效的文件组 Test1FG1。

USE master;
GO
ALTER DATABASE AdventureWorks2012
REMOVE FILE test1dat3 ;
ALTER DATABASE AdventureWorks2012
REMOVE FILE test1dat4 ;
GO

USE master;
GO
ALTER DATABASE AdventureWorks2012
REMOVE FILEGROUP Test1FG1 ;
GO

用于“返回首页”链接的箭头图标[Top]

请参阅

参考

ALTER DATABASE 文件和文件组选项 (Transact-SQL)

概念

延迟的事务 (SQL Server)

文件还原(完整恢复模式)

文件还原(简单恢复模式)

联机还原 (SQL Server)

还原页 (SQL Server)

段落还原 (SQL Server)