【问题标题】:Database Restore数据库还原
【发布时间】:2014-03-05 19:21:33
【问题描述】:

SQL 2012

我正在尝试在本地计算机中恢复完整备份数据库。已从服务器数据库进行备份。我尝试了向导选项和语法选项。

RESTORE DATABASE MyDatabase
FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\DB_Backup.bak'
WITH REPLACE

在执行上述语法时,我收到如下错误消息。

错误消息表明,原始备份文件 - .mdf 和 .ldf 仍映射到原始服务器路径。

Msg 3156, Level 16, State 3, Line 1
File 'DB_Backup_Data' cannot be restored to 'D:\My Path\Data\DB_Backup.mdf'. Use WITH MOVE to identify a valid location for the file.
Msg 3156, Level 16, State 3, Line 1
File 'DB_Backup_Log' cannot be restored to 'D:\My Path\Data\DB_log.ldf'. Use WITH MOVE to identify a valid location for the file.

如何将 .ldf 和 .mdf 重新映射到我的本地计算机并恢复数据库

【问题讨论】:

    标签: sql sql-server sql-server-2012


    【解决方案1】:

    试试这个:

    RESTORE DATABASE [MyDatabase] 
    FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\DB_Backup.bak'
    WITH MOVE 'MyDatabase_Data' TO 'D:\My Path\Data\DB_Backup.mdf',
    MOVE 'MyDatabase_Log' TO 'D:\My Path\Data\DB_log.ldf',
    REPLACE
    

    同时检查DB Restoration Problem

    【讨论】:

      【解决方案2】:

      您需要指示 SQL Server 将文件移动到本地计算机上的正确位置 - 类似于:

      RESTORE DATABASE MyDatabase
      FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\DB_Backup.bak'
      WITH REPLACE,
          MOVE 'DB_Data' TO 'C:\MyData\MyDatabase_Data.mdf', 
          MOVE 'DB_Log' TO 'C:\MyLog\MyDatabase_Log.ldf'
      

      您需要用正确的逻辑文件名替换 DB_Data 和 DB_Log,并用正确的物理文件名替换本地计算机上的数据库的路径。

      【讨论】:

        【解决方案3】:

        转到恢复数据库..,然后添加您要恢复的.bak 文件。
        之后转到 Options 并更改 Restore As 路径

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-01-02
          • 1970-01-01
          • 2021-08-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多