zoukankan      html  css  js  c++  java
  • sql2008备份集中的数据库备份与现有的xxx数据库不同解决方法

    今天部署一个asp老项目,在用MSSQL数据库备份文件还原数据库时,发生了问题。
    提示:sql2008备份集中的数据库备份与现有的xxx数据库不同
    百度找到了这篇文章:sql2008备份集中的数据库备份与现有的xxx数据库不同解决方法
    但我和他重现问题的步骤不一样,他是以文件和文件组的方式还原出现了问题,而我是以数据库的方式还原出现了问题。
    换句话说,他的解决方案里的步骤就是我出错的步骤,如图:

    最后,我尝试用他文章里提到的,但他却没有试过的方法,以SQL命令的方式还原数据库。

    RESTORE DATABASE test     -- xxxx-改为你自己的数据名称
    FROM DISK = 'E:	estdataxxx.bak'   --bak文件路径 xxxx-改为你自己的数据名称
    with replace,
    MOVE 'xxx' TO 'E:	estdata	est.mdf',   --mdf文件路径--xxxx-改为你自己的数据名称
    MOVE 'xxx_log' TO 'E:	estdata	est_log.ldf'   --ldf文件路径xxxx-改为你自己的数据名称
    

    执行时报错,提示逻辑文件xxx不是数据库xxx的一部分,请使用RESTORE FILELISTONLY 来列出逻辑文件名
    根据提示,执行如下代码。

    RESTORE FILELISTONLY 
    FROM DISK = 'E:dataxxx.bak'
    

    看到执行结果中的逻辑名后,刚才的代码改成:

    RESTORE DATABASE test     -- xxxx-改为你自己的数据名称
    FROM DISK = 'E:	estdataxxx.bak'   --bak文件路径 xxxx-改为你自己的数据名称
    with replace,
    MOVE 'ceshi' TO 'E:	estdata	est.mdf',   --mdf文件路径--xxxx-改为你自己的数据名称
    MOVE 'ceshi_log' TO 'E:	estdata	est_log.ldf'   --ldf文件路径xxxx-改为你自己的数据名称
    

    再次执行,成功还原数据库。

    PS:在空数据库上还原MSSQL数据库备份文件时,要注意该备份文件当时的备份方式是否以完整备份的方式进行备份,而不是所谓的差异备份。如果是差异备份,会造成还原失败

    参考:https://www.cnblogs.com/rousi/p/5880751.html

  • 相关阅读:
    WPF TextBox 一些设置技巧
    Rust 初始配置
    Framework​Element.​Find​Name 根据名字查找控件
    C# SQLite 数据库操作
    MP3 信息读取
    C# event 事件学习
    Nginx 整合 Lua 实现动态生成缩略图
    Spring Cloud 入门 之 Config 篇(六)
    Spring Cloud 入门 之 Zuul 篇(五)
    Flyway 简单入门教程
  • 原文地址:https://www.cnblogs.com/VAllen/p/MSSQL-RESTORE.html
Copyright © 2011-2022 走看看