Найти какие sql версии (!) Установленные по папкам?
Я видел эту ссылку, но без посторонней помощи:
Как определить установленные экземпляры SQL Server и их версии?
Вот мой вопрос:
![enter image description here]()
Я хочу посмотреть, какие версии sql установлены на моем компьютере.
Если я запускаю запрос и набираю:
select @@version
Это говорит мне версию запущенного потока. (что я не хочу)
Я хочу увидеть все версии - если они установлены!
Пример: компьютер может иметь sql 2000, 2005, 2008, 2008R2
Я прикрепил экран печати для папок сервера sql.
Я знаю, что
80 = SQL Server 2000
90 = SQL Server 2005
100 = SQL Server 2008
Как бы то ни было, это не правило.
С 2008 года создает 80, 90.
Похоже, что единственный способ узнать, какие версии установлены (кроме regedit), - это менеджер конфигурации сервера Sql.
![enter image description here]()
Вопросы:
1) Можно ли только с помощью файловой системы определить, какие версии я установил?
2) Есть ли другой способ (кроме реестра), чтобы увидеть, какие версии SQL установлены?
3) Я прочитал, что mssql.1 для двигателя. Что насчет MSSQL10.SQLEXPRESS? Почему у него нет номера mssql.4? MSDN говорит, что это последовательный идентификатор установленных компонентов.
Ответы
Ответ 1
SQL Server 2008 Discovery Report
Как узнать, какие функции и версия SQL Server у меня есть? установлен? Этот вопрос был задан много в последнее время. Начиная в SQL Server 2008, мы добавили отчет об обнаружении SQL Server в качестве опции на странице Инструменты в Центре установки. Когда вы нажимаете на ссылка ниже, SQL Server будет запущен для обнаружения SQL Server Особенности.
Отчет об обнаружении SQL Server сохраняется в% ProgramFiles%\Microsoft SQL Server\100\Setup Bootstrap\Log \
Options:
Вы также можете создать отчет об обнаружении с помощью командной строки. Запустите "Setup.exe/Action = RunDiscovery" из командной строки, если вы добавите "/q" в командной строке выше пользовательский интерфейс не будет показан, но отчет будет по-прежнему создаваться в папке% ProgramFiles%\Microsoft SQL Server\100\Setup Bootstrap\Log\20091112_082147.
Справка:
Ответ 2
Обычно,
- SQL Server 2005 использует следующую схему именования каталогов:
MSSQL.1, MSSQL.2, ...
,
- SQL Server 2008 использует
MSSQL10.<INSTANCENAME>
и
- SQL Server 2008R2 использует
MSSQL10_50.<INSTANCENAME>
.
Однако, поскольку каталог данных можно изменить во время установки (по крайней мере, для более новых версий SQL Server), это не надежный способ обнаружения экземпляров SQL Server.
Ответ 3
Хммм... Если вы хотите знать, какие версии у вас используются только "файловая система", самое близкое, что я знаю, это открытие журнала ошибок (~ MSSQL\LOG\ERRORLOG) и всякий раз, когда вы запускаете соединение, версия экземпляра сервера sql зарегистрирован Вы можете выполнить поиск "Microsoft SQL Server", и вы увидите такие вещи, как "Microsoft SQL Server 2008 (SP1)" или Microsoft SQL Server 2003" и т.д.
Ответ 4
Если вы используете .NET, вы можете использовать метод SmoApplication.EnumAvailableSqlServers из SMO для перечисления всех локальных серверов SQL и получения информации о их версии.
Вот ТАК пример.