从备份文件bak中识别SQL Server的版本

原文:https://www.cnblogs.com/Rawls/p/10726010.html

SQLServer 的备份文件是以.bak 为后缀的文件,如果想要通过备份文件查看数据库版本,通常的做法就是把数据库还原,但是在还原的过程,如果不是相同的数据库版本,就会导致无法还原;

在数据库中,低版本的备份文件是可以还原到高版本的数据库中,高的就不可以了,比如SQLSERVER 2008 的备份文件可以在SQLSERVER 2012 中还原,2012就不能在2008中还原;

 

  看下,我们常规的做法,找到 .bak 备份文件,鼠标右键,查看属性能否有描述信息;

   

 

  然而并没有任何信息,说明此方法不可行。

  这时候,我们就可以用一段脚本来查看,如下:

  

RESTORE HEADERONLY
FROM DISK = N'D:\SQLSERVER_DATA\备份文件\XXXX.bak'

 

 

注意列 - ServerName,UserName,DatabaseName,DatabaseVersion。我们可以从这些列中找出原始服务器名称和数据库版本。

以下是所有SQL Server版本及其从SQL Server 2008到最新版本SQL Server的兼容级别的快速列表。

SQL Server 版本内部数据库版本数据库兼容级别
SQL Server 2017 869 140
SQL Server 2016 852 130
SQL Server 2014 782 120
SQL Server 2012 706 110
SQL Server 2008 R2 660/661 100
SQL Server 2008 655 100

 

 

那么,对比上面的列表,我就可以知道,我的这个备份文件是2008 的备份文件;

 

posted @   Tozhang  阅读(894)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示