Sql-server – Where does [reflection.assembly] reside

powershellsql server

In a disconnected DEV box, I attempt to load the reflection assembly, "Microsoft.SqlServer.SMO". Then I try to call for a SMO.Server object, like this

[Reflection.assembly]::("Microsoft.SqlServer.SMO") | Out-Null

Powershell responds with this error message

New-Object : Cannot find type {Microsoft.SqlServer.SMO.Server]: verify that the assembly containing this type is loaded.

So I get it. I need to find a copy of the assembly, download it to a USB device, and upload it to my disconnected DEV server. Where do I find the assembly to download?

Best Answer

https://support.timextender.com/hc/en-us/articles/210437663-Error-Could-not-load-file-or-assembly-Microsoft-SqlServer-ConnectionInfo-

Cause

You have not installed the SQL Shared Management Objects (SMO). They are needed to create tables and other SQL objects from TX.

Resolution

Download the SQL Shared Management Objects from the SQL Server Feature Packages and install it. The download sites are linked below - the file you need is called SharedManagementObjects.msi.

SQL Server 2016

SQL Server 2014

SQL Server 2012

SQL Server 2008 R2

SQL Server 2008

SQL Server 2005

SQL Server 2017

Many thanks to Tobias Eld and my apologies to the net for not finding this resource before I posted this question.