Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


Боковая панель

powershell:sql-server:query-information-about-installed-sql-server-instances-against-a-list-of-servers-from-active-directory

Запрос экземпляров SQL Server по списку серверов из Active Directory

В этой заметке рассмотрены варианты запроса информации об установленных экземплярах SQL Server по списку серверов из Active Directory с помощью PowerShell.


В этом примере из AD выбираются компьютеры по маске имени *SQL* и *DB*:

Import-Module ActiveDirectory
 
$servernames = ( `
 Get-ADComputer -Filter ('Name -like "*SQL*" -Or Name -like "*DB*"') `
 -SearchBase "OU=YourServers,DC=YourDomain,DC=com" `
 | Select-Object -expand Name )
 
Invoke-Command -ComputerName ( `
 Get-ADComputer -Filter ('Name -like "*SQL*" -Or Name -like "*DB*"') `
 -SearchBase "OU=YourServers,DC=YourDomain,DC=com" `
 | Select-Object -expand Name ) `
 -ScriptBlock { `
 Import-Module SQLPS -DisableNameChecking
 $Srv = New-Object "Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer" $servernames
 $Srv.ServerInstances `
 | Select-Object Name, State, ServerProtocols, Urn `
 | Format-Table -AutoSize  } ` 
| Out-File C:\Temp\SQL_Servers_Poll.txt

Проверено на следующих конфигурациях:

Версия ОС Версия PowerShell Версия SQL Server
Windows Server 2008R2, 2012R2 3.0+ SQL Server 2012

Автор первичной редакции:
Пётр Окунев
Время публикации: 06.12.2021 20:56

Обсуждение

Ваш комментарий:
 

powershell/sql-server/query-information-about-installed-sql-server-instances-against-a-list-of-servers-from-active-directory.txt · Последнее изменение: 06.12.2021 21:26 — Пётр Окунев