Appearance
SQL Server 数据库分离与附加操作指南
💡 背景说明
除了传统的 BAK 备份还原外,“分离/附加”也是 DBA 经常使用的手段。它直接操作物理数据库文件,适用于在同一台服务器上快速克隆测试库,或在停机状态下快速迁移数据文件。
1. 分离数据库 (Detach)
分离操作会将数据库从 SQL Server 实例中移除,但保留其 .mdf (数据) 和 .ldf (日志) 文件。
- 确定文件位置:右键点击数据库 -> 属性 -> 文件,记住“路径”和“文件名”。
- 执行分离:右键点击数据库 -> 任务 -> 分离。
- 🔴 安全提醒:在分离前,请确保没有活跃连接。建议勾选“更新统计信息”和“删除连接”。
- 获取物理文件:分离成功后,你可以在刚才记住的文件夹中找到对应的物理文件。
2. 克隆测试库 (复制文件)
如果你想通过物理文件创建一个新的测试副本:
- 复制文件:在资源管理器中,将分离出来的
.mdf和.ldf文件复制并重命名(例如MyDB_Test.mdf)。 - 注意权限:新复制的文件必须确保 SQL Server 服务账号拥有完全控制权限。
3. 附加数据库 (Attach)
将物理文件重新挂载到 SQL Server 实例中。
- 开始附加:右键点击“数据库” -> 选择 附加。
- 添加文件:点击“添加”按钮,浏览并选择刚才复制好的
.mdf文件。 - 🟢 重命名测试库:在附加窗口的“附加数据库为”列中,输入新的数据库名称(如
MyDB_Test)。 - 校验日志文件:如果路径发生变化,确保下方“数据库详细信息”中的日志文件路径正确。
4. 分离/附加 vs 备份/还原
| 特性 | 分离/附加 | 备份/还原 |
|---|---|---|
| 速度 | 极快(仅物理挂载) | 较慢(涉及 IO 解压与重建) |
| 停机要求 | 必须停机/断开连接 | 支持在线备份 |
| 文件完整性 | 依赖物理文件完好 | 备份文件可跨版本/设备传输 |
| 适用场景 | 快速克隆测试库、移动文件位置 | 灾难恢复、生产环境迁移 |
✅ 操作总结 分离与附加是搭建测试库最“暴力”且有效的方法,但请务必在操作前做好物理文件级的备份,防止操作失误导致数据丢失。
