【问题标题】:SQL Server Express backup and restore to other database batchSQL Server Express 备份和恢复到其他数据库批处理
【发布时间】:2015-08-26 01:56:09
【问题描述】:

我正在尝试从我的实时数据库中外包一些流程,其中第三方工具正在导入数据,由于质量原因,这些数据首先必须通过一些脚本/更改才能在实时数据库中实施

所以我想我会在同一台服务器上创建第二个数据库,并使用我的备份批次,每次我进行备份时,我都会在新数据库中恢复备份,第三方工具正在导入数据。然后我使用这个数据库对另一个数据库进行一些更改,然后我将其更新到实时数据库中。

批处理文件:

osql.exe -S (local)\WAWI -U user -P password -Q "BACKUP DATABASE eazybusiness TO DISK = 'c:\WaWi-Backups\eazybusiness.bak'"
osql.exe -S (local)\WAWI -U user -P password -d master -Q "restore database Mandant_2 FROM DISK ='c:\WaWi-Backups\eazybusiness.bak' with replace"

但是在运行脚本时,restore 命令抛出以下错误

消息“1834”,“16”,状态“1”,服务器“DBServer\WAWI”,第 1 行
文件 ' C:\Program Files\Microsoft SQL 服务器\MSSQL11。 WAWI\MS​​SQL\DATA\eazybusiness.mdf' 不能被覆盖 是。它被eazybusiness数据库使用。

消息“3156”,“16”,“4”状态,服务器“DBServer\WAWI”,第 1 行
文件“eazybusiness”不能在“C:\Program Files\Microsoft SQL”中 服务器\MSSQL11。 WAWI\MS​​SQL\DATA\eazybusiness.mdf' 被恢复。 使用 WITH MOVE 移动到文件的有效位置以进行识别。

消息“1834”,“16”,状态“1”,服务器“DBServer\WAWI”,第 1 行
文件 ' C:\Program Files\Microsoft SQL 服务器\MSSQL11。 WAWI\MS​​SQL\DATA\eazybusiness_log.ldf' 不能 被覆盖。它被eazybusiness数据库使用。

消息“3156”,“16”,“4”状态,服务器“DBServer\WAWI”,第 1 行
文件“eazybusiness_log”不能位于“C:\Program Files\Microsoft SQL”中 服务器\MSSQL11。 WAWI\MS​​SQL\DATA\eazybusiness_log.ldf' 已恢复 是。使用 WITH MOVE 到文件的有效位置 识别。

消息“3119”,“16”,状态“1”,服务器“DBServer\WAWI”,第 1 行
在还原语句的规划中发现了问题。前 消息包含详细信息。

消息“3013”,“16”,状态“1”,服务器“DBServer\WAWI”,第 1 行
RESTORE DATABASE 异常停止。 说话选择语音选项使用必应搜索此翻译这是一个很好的翻译这是一个糟糕的翻译。

如何批量恢复另一个数据库中的备份?

【问题讨论】:

    标签: sql-server-2008 batch-file database-restore


    【解决方案1】:

    您正在使用不同的名称但相同的文件属性恢复备份。由于原始数据库存在,您正试图覆盖相同的数据库,这会导致失败。您需要使用 WITH MOVE 语法为每个数据库数据和日志文件指定不同的文件名和/或位置。

    请参阅RESTORE 文档,特别是“使用 BACKUP 和 RESTORE 复制数据库”部分。

    示例:

    RESTORE DATABASE TestDB 
       FROM AdventureWorksBackups 
       WITH MOVE 'AdventureWorks2012_Data' TO 'C:\MySQLServer\testdb.mdf',
       MOVE 'AdventureWorks2012_Log' TO 'C:\MySQLServer\testdb.ldf';
    GO
    

    【讨论】:

    • 使用 move 命令是移动我的主数据库的日志还是保存在恢复文件中的日志的名称?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多