文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

2023-02-02 10:00

关注

第一种方法,使用Sql Server Management Studio还原

这是演示的是Sql Server 2008R2版本,不同版本可能有细微差别

右键点击数据库→还原数据库

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 在还原的源中选择源设备→点击选择框

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 在指定备份中点击添加→选择具体文件→确定→确定

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 勾选用于还原的备份集→这时目标数据库中会自动生成目标数据库名,在此选择即可→确定

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 即可还原BAK数据库备份文件

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 常见错误:

1.指定的转换无效

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

在选择具体文件的时候,我们可能会产生这个报错,导致这个的原因是BAK文件备份中的版本和高于我们的版本,需要部署更高版本的SqlServer。

2.System.Data.SqlClient.SqlError: 尚未备份数据库 "xxx" 的日志尾部

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

2005版本以上,在还原BAK备份文件时是不需要提前建好数据库的。所以,先选源设备,再在下拉选项中选择数据库即可。

3.3154或3159报错

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

原因和第二点一致,在选择还原文件和文件组时才会出现这两个报错

第二种方法,使用sql server语句还原

ALTER DATABASE [test] SET OFFLINE WITH ROLLBACK IMMEDIATE    --断开其他用户与数据库的连接

USE MASTER                                                                                                --这里注意要使用MASTER,以免出现待还原库被占用的情况
RESTORE DATABASE [test]                                                                          --为待还原库名
FROM 
  DISK = 'C:\Users\xxx\Desktop\exxx_zy.bak'                                                 --备份文件的位置
WITH
  MOVE 'exxx_zy'                                                                                            --数据文件逻辑名字
  TO 'C:\Program Files\Microsoft SQL Server\mssql10_50.MSSQLSERVER\MSSQL\DATA\exxx_zy.mdf',           --指定数据文件路径
  MOVE 'exxx_zy_LOG'                                                                                  --日志文件逻辑名字
  TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\exxx_zy.ldf',             --指定日志文件路径
STATS = 10, REPLACE
GO

ALTER database [test] set online                                                                   --重新上线数据库

常见错误:

1.逻辑文件 'xxx' 不是数据库 'test' 的一部分。

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

文件名不一定是实际的逻辑名,这个时候我们需要获取文件的逻辑名替换后再执行语句。此时执行RESTORE FILELISTONLY FROM DISK ='C:\Users\xxx\Desktop\xxx.bak'获取数据文件和日志文件的LogicalName。

2.设备'xxx.bak'上的介质簇的结构不正确。

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

出现这个错误代表bak文件版本高于目前Sql Server版本,需要升级

第三种方法,使用Navicat还原

这里演示的Navicat版本是16,部分版本可能不太相同

使用Navicat恢复BAK备份文件依旧需要有Sql Server,连接步骤这里省略。

选择SqlServer任意数据库→SQL Server备份→空白处鼠标右键→选择从文件还原

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 选择需要还原到的数据库→添加设备→选择备份文件→确定

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

 勾选还原计划

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

选择高级→勾选WITH REPLACE→选择数据文件和日志文件存放位置(这里不选择会默认放置在之前服务器/电脑的地址)→生成SQL

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

点击还原

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

稍等片刻就还原啦

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

常见错误:

1.需要密码

还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结

其实当BAK文件版本高于当前SqlServer版本的时候,也会产生这个提示,这是因为SqlManagerUI的报错被Navicat理解成了需要密码。所以当使用Navicat还原BAK文件的时候可以和对方确认一下版本信息,避免造成误解。 

总结

到此这篇关于还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结的文章就介绍到这了,更多相关还原Sql Server数据库BAK备份文件内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯