附加和分离分析服务数据库

通常情况下,Analysis Services 数据库管理员 (dba) 希望将数据库脱机一段时间,然后在同一服务器实例上或不同服务器实例上将该数据库重新联机。 这些情况通常由业务需求驱动,例如将数据库移动到其他磁盘以提高性能、获得数据库增长空间或升级产品。 对于所有这些情况及其他,AttachDetach 命令使 Analysis Services dba 能够轻松地将数据库脱机并重新联机。

附加和分离命令

Attach 命令使你能够使数据库联机。 可以将数据库附加到原始服务器实例或另一个实例。 附加数据库时,用户可以为数据库指定 ReadWriteMode 设置。 该 Detach 命令允许您将数据库从服务器脱机。

附加和解除使用情况

Attach 命令用于使现有数据库结构联机。 如果数据库以 ReadWrite 模式附加,则只能将数据库一次附加到服务器实例。 但是,如果数据库以 ReadOnly 模式附加,则可以多次将其附加到不同的服务器实例。 但是,同一数据库不能多次附加到同一服务器实例。 如果尝试多次附加同一数据库,即使数据已复制到单独的文件夹,也会引发错误。

重要

如果需要密码来分离数据库,则附加数据库时需要相同的密码。

Detach 命令用于使现有数据库结构脱机。 分离数据库时,应提供密码来保护机密元数据。

重要

若要保护数据文件的内容,应对文件夹、子文件夹和数据文件使用访问控制列表。

分离数据库时,服务器将遵循以下步骤。

分离读/写数据库 卸载只读数据库
1) 服务器对数据库发出 CommitExclusive Lock 的请求
2)服务器等待所有正在进行的事务被提交或回滚
3)服务器生成所有必要的元数据以分离数据库
4) 数据库标记为已删除
5) 服务器提交事务
1) 数据库标记为已删除
2) 服务器提交事务内容



注意:无法更改只读数据库的分离密码。 如果为已包含密码的附加数据库提供了密码参数,则会引发错误。

AttachDetach命令必须作为单个操作执行。 它们不能与同一事务中的其他操作组合在一起。 此外, Attach 命令 Detach 是原子事务命令。 这意味着作将成功或失败。 任何数据库都不会处于未完成状态。

重要

执行 Detach 命令需要服务器或数据库管理员权限。

重要

执行 Attach 命令需要服务器管理员权限。

另请参阅

Attach*
Microsoft.AnalysisServices.Database.Detach*
移动 Analysis Services 数据库
Database ReadWriteModes
在 ReadOnly 和 ReadWrite 模式之间切换 Analysis Services 数据库
分离元素
附加元素