從備份文件bak中識別SQL Server的版本


 

  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 的備份文件;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM