zoukankan      html  css  js  c++  java
  • sql2008还原问题

        2003的服务器系统不知是因为对SSD的支持不好还是别的原因,系统使用有很多奇怪的问题,所以就升级一下系统,在备份数据库的时候出现了各种问题

        源数据库与现数据库都为sqlserver2008,并都安装自同一个ISO镜像, 区别就是系统不同,源系统是2003,现系统是win7x64

        1.完整备份之后,直接用GUI还原时提示: "指定的转换无效。 (SqlManagerUI)", 排除数据库版本不一致的原因,  使用脚本还原提示:"在从该备份集进行读取时,RESTORE 检测到在数据库 "xxxx" 中的页(0:0)上存在错误。"

        2.使用分离/附加方式,  附加的时候提示: " 无法为该请求检索数据。    xxx.mdf 不是主数据库文件。 (Microsoft SQL Server,错误: 5171)"

        3.建立同名空数据库,然后替换文件,直接数据库成无效状态

        

    解决文案:

       1.使用源服务器的物理桌面(非远程),备份数据库到移动硬盘(之前是备份到SSD) ,备份选项勾选"仅复制备份"

       2.使用以下脚本还原数据库:

    use master 
    RESTORE DATABASE [DBName] FROM DISK = N'[bak_file].bak' WITH replace, 
    MOVE N'[logical_name]' TO N'[db_file].mdf',  
    MOVE N'[logical_name]_log' TO N'[db_log_file].ldf'
    --查看备份文件中的逻辑名称
    --RESTORE FILELISTONLY FROM DISK = N'[bak_file].bak'

     在几分钟的等待之后,终于提示还原成功. 问题得已解决,至于解决问题的关键点在哪里,没有具体测试!

  • 相关阅读:
    序例化-Externalizable 接口
    线程休眠
    线程优先级
    const & 用法
    AcGePoint3d ads_point 转换
    结果缓冲区 resbuf具体用法
    选择集用法
    引用用法
    通过用户选择获取各种东西
    ARX中类型强制转换
  • 原文地址:https://www.cnblogs.com/hanf/p/3483061.html
Copyright © 2011-2022 走看看