Eu tenho uma consulta que me mostra todas as instâncias do SQL Server em um servidor:
DECLARE @GetInstances TABLE
( Value nvarchar(100),
InstanceNames nvarchar(100),
Data nvarchar(100))
Insert into @GetInstances
EXECUTE xp_regread
@rootkey = 'HKEY_LOCAL_MACHINE',
@key = 'SOFTWARE\Microsoft\Microsoft SQL Server',
@value_name = 'InstalledInstances'
Select [ServerName] = @@servername,InstanceNames from @GetInstances
e também tenho uma consulta que mostra as configurações de memória e o uso de uma instância específica:
SELECT [instance] = @@servername, p.*
FROM (SELECT name, [value_in_use]
FROM sys.configurations) t
PIVOT (MAX([value_in_use]) FOR name IN ([min server memory (MB)],
[min memory per query (KB)],
[max server memory (MB)],
[optimize for ad hoc workloads])) p
existe uma maneira de ter o melhor desses dois mundos - ter todas as informações de todas as minhas instâncias do SQL Server, em uma consulta?
Gostaria de evitar a necessidade de criar um servidor vinculado.
Eu não me importaria de usar o PowerShell ou qualquer outra ferramenta, desde que não precise executá-lo como administrador.