曾经对我有用的一个很酷的技巧是通过 PowerShell 在 SQL Server Management Studio 中创建注册服务器组和注册。但是,现在我运行的是当前版本(SSMS 17.9.1),我发现功能已经丢失。我不确定它是什么时候坏的。
安装 SQLServer 模块后:
Install-Module -Name SqlServer
您可以通过右键单击“已注册服务器”窗口中的服务器组,然后单击“启动 Powershell”来打开 PowerShell 提示符。在这里,过去,我已经能够使用以下命令创建新组和注册:
Set-Location "sqlserver:\SQLRegistration\Database Engine Server Group"
# group
New-Item -Path "sqlserver:\SQLRegistration\Database Engine Server Group\AllServers"
# registration
New-Item -Name $(encode-sqlname 'sqlsrv') -path "sqlserver:\SQLRegistration\Database Engine Server Group\AllServers" -ItemType Registration -Value ("Server=sqlsrv ; integrated security=true");
这些命令仍然可以正常运行。但是在刷新(甚至重新启动)之后,新的服务器注册不会显示在 Registered Servers 窗口中。
而且,在已注册服务器窗口中设置的服务器组和注册不会在 PowerShell 提示符下与 Get-Item/Get-ChildItem 一起显示。
在当前版本中,此功能是否仍然适用于其他任何人?
我猜想当 SQLPS powershell 模块被 SQLServer 模块取代时会发生一些变化,但这只是一个猜测。如果是这样,我希望我需要在新工具集下使用这些命令进行调整。