分离数据库

本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 2014 中分离数据库。 分离的文件将保留,可以使用带有 FOR ATTACH 或 FOR ATTACH_REBUILD_LOG 选项的 CREATE DATABASE 命令重新附加这些文件。 文件可以移动到另一台服务器并在该服务器上进行存储。

本主题内容

在您开始之前

局限性与限制

有关限制和约束的列表,请参阅数据库分离和附加(SQL Server)。

安全

权限

要求db_owner固定数据库角色的成员身份。

使用 SQL Server Management Studio

分离数据库

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

  2. 展开 “数据库”,然后选择要分离的用户数据库的名称。

  3. 右键单击数据库名称,指向 “任务”,然后单击“ 分离”。 此时会显示“ 分离数据库 ”对话框。

    要分离的数据库
    列出要分离的数据库。

    数据库名称
    显示要分离的数据库的名称。

    删除连接
    断开与指定数据库的连接。

    注释

    不能分离具有活动连接的数据库。

    更新统计信息
    默认情况下,分离作在分离数据库时保留任何过时优化统计信息;若要更新现有优化统计信息,请单击此复选框。

    保留 Full-Text 目录
    默认情况下,分离操作将保留与数据库关联的所有全文目录。 若要删除它们,请清除 “保留 Full-Text 目录 ”复选框。 仅当从 SQL Server 2005 升级数据库时,才会显示此选项。

    地位
    显示以下状态之一: 就绪未就绪

    消息
    消息列可能会显示有关数据库的信息,如下所示:

    • 当数据库涉及复制时,状态为“未就绪”,消息列显示“数据库已复制”。

    • 当数据库具有一个或多个活动连接时,状态为“未就绪”,“消息”列将显示<number_of_active_connections>活动连接(s) - 例如:1 个活动连接(s)。 在分离数据库之前,需要通过选择 “删除连接”断开任何活动连接。

    若要获取有关消息的详细信息,请单击超链接文本以打开活动监视器。

  4. 准备好分离数据库时,单击“ 确定”。

注释

在刷新视图之前,新分离的数据库将在对象资源管理器的 “数据库 ”节点中保持可见。 可以随时刷新视图:在“对象资源管理器”窗格中单击,然后从菜单栏中选择“ 视图 ”,然后单击 “刷新”。

使用 Transact-SQL

分离数据库

  1. 连接到数据库引擎。

  2. 在标准栏中,单击“新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击 执行。 此示例将 AdventureWorks2012 数据库分离,并将 skipchecks 设置为 true。

EXEC sp_detach_db 'AdventureWorks2012', 'true';  

另请参阅

数据库分离和附加 (SQL Server)
sp_detach_db(Transact-SQL)