6
วิธีที่มีประสิทธิภาพมากที่สุดในการค้นหาอินสแตนซ์ที่ทำงานอยู่ทั้งหมดของ SQL Server โดยใช้ PowerShell คืออะไร
ฉันได้รับมอบหมายให้ค้นหาอินสแตนซ์ทั้งหมดของ SQL Server ที่ทำงานอยู่ภายในโดเมนของเรา ในหลายกรณีมีหลายอินสแตนซ์ต่อเซิร์ฟเวอร์ ฉันเห็นวิธี PowerShell สองวิธีที่แตกต่างกันในการค้นหาอินสแตนซ์เหล่านี้ แต่ดูเหมือนจะไม่พบอินสแตนซ์ทั้งหมด 1) ใช้ WMI $srvr = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer $computerName $instances = $srvr | ForEach-Object {$_.ServerInstances} | Select @{Name="fullName";Expression={$computerName +"\"+ $_.Name}} return $instances 2) ใช้รีจิสตรีระยะไกล (เช่นเดียวกับ Get-SQLInstance 1 ) ปัญหาที่ใหญ่ที่สุดที่ฉันพบคือเซิร์ฟเวอร์ทั้งหมดที่ฉันรู้จักไม่ทำงานกับผู้ให้บริการ SQL Server WMI และไม่อนุญาตให้ใช้รีจิสตรีระยะไกล มีวิธีที่สามหรือไม่? ฉันสามารถใช้ Remote Desktop เพื่อเข้าถึงเซิร์ฟเวอร์ทั้งหมด แต่ฉันกำลังดูเครื่องจักรประมาณ 30 เครื่องและต้องการหลีกเลี่ยงขั้นตอนแบบแมนนวลหากเป็นไปได้ …