是否可以还原分离的数据库(无需重新连接)?
数据库很大,但是没有可用的磁盘空间来创建备份。 因此,我正在考虑分离数据库,然后将其复制到另一台服务器。
该另一台服务器使用Powershell脚本还原数据库。 这是否适用于分离的数据库?我无法使用此脚本重新附加它。只需还原即可。
Restore-SqlDatabase -ServerInstance $ serverInstance-数据库$ myDb -BackupFile“ detachedFile”-凭据$ Cred
答案 0 :(得分:1)
数据库的备份格式不同(.bak)。在分离操作中获得的文件是mdf,ndf数据文件格式,ldf日志文件格式是不同的格式。
You can read about the formats。我将内容从网站下面放下来,以方便参考。
通常,扩展名为.bak的数据库备份文件包含 Microsoft本身用作的标准Microsoft磁带格式(MTF) 以及许多用于Microsoft Windows平台的备份工具。
在将数据写入和读取数据时使用Microsoft磁带格式 在存储管理或数据期间从可移动存储设备访问 保护操作,例如数据传输,复制,备份和 恢复。对于SQL Server,MTF文件包含数据和日志 恢复数据库所需的信息(MDF和LDF文件)。 MDF文件是主数据文件或主数据库数据文件, 将该数据库中的所有其他文件绑定在一起。 LDF是日志 数据文件,其中包含所有日志信息,对于 数据库还原过程。
您不能对mdf,ldf文件使用Restore database命令。您需要使用附加,分离方法才能在其他环境中使用它们。正如@Peter Smith所建议的那样,您可以使用powershell脚本执行相同的操作。