SQL 使用 SqlServer PowerShell 模块发现服务器实例

SQL Server instance discovery using SqlServer PowerShell module

dbatools 模块的 Find-DbaInstance 可以接受计算机名称和 return 该计算机上的实例列表。在执行此操作的 SqlServer 模块中是否有等效项?我试过 Get-SqlInstance,但它似乎需要实际的实例名称,而不是能够将其用于实例发现。我更喜欢使用 dbatools,但 SqlServer 模块是我在当前环境中始终可以访问的模块。

this article

中有很多甚至不依赖sqlserver模块的好结果

例如

$SQLInstances = Invoke-Command -ComputerName "localhost" {
    (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server').InstalledInstances
}

foreach ($sql in $SQLInstances) {
    [PSCustomObject]@{
        ServerName = $sql.PSComputerName
        InstanceName = $sql
    }
}