В этой статье мы рассмотрим несколько способов определить версию и редакцию установленного сервера MS SQL Server. Предположим, что вы являетесь администратором баз данных, и вам было поручено запланировать обновление на одном из хостов SQL Serve. Первая мысль, которая приходит вам на ум «Как узнать какая версия и редакция используется на данном сервере SQL?».
Мы рассмотрим несколько самых простых способов определения установленных версий SQL-сервера. Эти методы применимы ко всем выпускам MS SQL Server.
Версия MS SQL в SQL Server Management Studio
Запустите SQL Server Management Studio (SSMS), и откройте свойства вашего инстанса.
Версия и номер билда SQL Server указаны на вкладке General.
SQL запрос @@version
Запустите консоль SQL Server Management Studio и авторизуйтесь на сервере. Щелкните правой кнопкой по серверу и выберите пункт New Query. В окне запроса укажите следующий код:
select @@version
Нажмите Execute. Результат выполнения запроса будет содержать полную информацию об установленной редакции SQL, номере версии, и окружении (операционная система и т.д.) и выглядеть примерно так.
Microsoft SQL Server 2014 (SP2) (KB3171021) - 12.0.5000.0 (X64) Enterprise Edition (64-bit) on Windows NT 6.3 <X64>
SELECT @@version не выдает информацию об установленном сервис-паке. Вы можете определить Service Pack по номеру версии на странице http://support.microsoft.com/kb/321185/en. В нашем примере версия 12.0.5000.0 означает, что установлен SP2.
Таблица соответствия между билдами и версиями MS SQL:
SQL Server 2022 | 16.0 |
SQL Server 2019 | 15.0 |
SQL Server 2017 | 14.0 |
SQL Server 2016 | 13.0 |
SQL Server 2014 | 12.0 |
SQL Server 2012 | 11.0 |
SQL Server 2008 R2 | 10.5 |
SQL Server 2008 | 10.0 |
Также вы можете выполнить команду SELECT @@VIERSION и получить версию SQL Server из командной строки:
sqlcmd -S ServerName\InstanceName -E -Q "SELECT @@VERSION"
Если на компьютере установлен модуль SQL PowerShell, выполните команду:
Invoke-SqlCmd -query "select @@version" -ServerInstance "localhost"
Если нужно получить версию, редакцию и установленный SP в табличной форме, можно воспользоваться таким T-SQL запросом:
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
Также вы получить значение версии с помощью встроенной процедуры xp_MSVer:
EXECUTE xp_MSVer 'ProductVersion'
EXECUTE xp_MSVer 'ProductName'
Или через функцию SERVERPROPERTY:
SELECT
SERVERPROPERTY('Edition') AS Edition,
SERVERPROPERTY('ProductVersion') AS ProductVersion,
SERVERPROPERTY('ProductLevel') AS ProductLevel,
SERVERPROPERTY('ProductUpdateLevel') AS ProductUpdateLevel
Если у вас недостаточно прав для авторизации с помощью SQL Server Management Studio, перейдите к следующему способу.
Версия SQL в свойствах файла sqlservr.exe
Это наверно самый простой способ. Просто перейдите в каталог с исполняемыми файлами SQL. К примеру, это может быть каталог C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Binn. Найдите файл sqlservr.exe и откройте его свойства. Перейдите на вкладку Details. Версия и редакция сервера будет присутствовать в полях Product version и Product name.
Product name: Microsoft SQL Server Product version: 12.0.5000.0
Также версию MS SQL Server можно определить по логу ERROR. По умолчанию в Windows он находится здесь Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG
Вы можете вывести содержимое лог файла с помощью PowerShell:
Get-Content C:\ Program Files\Microsoft SQL Server\MSSQL.13\MSSQL\LOG\ERRORLOG -Tail 100 | where { $_ -match "Microsoft SQL"}