Deploy SQL Server Management Studio using SCCM
In this post we will look at the steps to deploy SQL server management studio using SCCM (SSMS). SQL server management studio provides tools to configure, monitor, and administer instances of SQL. If you install SQL server 2016, by default SQL management studio is not installed on the machine.
I hope you will notice this when you install SQL server 2016 for SCCM. Prior to this SQL server 2014 had an option to allow installation of management tools. I am not a core SQL user but I do use SQL management studio while working on SCCM. This is basically to connect to the SQL instance and perform some tasks.
Microsoft decided to split the installation of management studio from the main SQL server installation. Probably the idea behind is to manage your SQL servers remotely. The question is why the SQL user needs to login to SQL server just to manage things that can be managed remotely as well.
Rather than logging in to the SQL server directly, installing management studio to manage SQL server is a better way. Therefore I believe in the future versions of SQL server, management studio will be a stand-alone tool.
Update – I have updated this post as the install and uninstall commands were incorrect.
Deploy SQL Server Management Studio using SCCM
To deploy SQL server management studio using SCCM, download the latest version from this link. This comes as an executable and I wish there was a msi file available. Furthermore on the same link you would find the compatible operating systems, change-log and prerequisites for installing studio. I must say that the studio is compatible with most of the modern operating systems. However do have a check once and proceed with the deployment.
Create a new application and choose Manually specify the application information. Click Next.
Add some information about the app and click Next.
Click on Add button to add deployment type. Select Manually specify the deployment information. Click Next.
Specify the content location, commands to install and uninstall the software.
Install Program - SSMS-Setup-ENU.exe /install /quiet /norestart
Uninstall Program - "C:\ProgramData\Package Cache\{91a1b895-c621-4038-b34a-01e7affbcb6b}\SSMS-Setup-ENU.exe" /uninstall /quiet /norestart
Add a detection rule by choosing setting type as File system.
Specify the File path as
%programfiles(x86)%\Microsoft SQL Server\140\tools\binn\managementstudio.
Next specify file name as Ssms.exe. Click OK and Next.
Specify the user experience settings based on your requirements. Click Next and complete the remaining steps. Finally distribute the content and deploy the application to the device collection.
Wait for the software to appear in the software center on client machine. Click Install to install the SQL management studio.
I have tested the app installation and uninstallation and the commands are correct.
I have converted this Installer to an MSI installer by using EMCO MSI Software. The software installs just fine through Software Center when I go to manually install the software. No error messages and it gets installed no issues. When I go to include this in a task sequence, it stalls out and does not install. I have even taken the application out of the Task Sequence I had it stored in and called it as a regular Application as part of an Operating System Deployment Task Sequence and the same thing is happening. I am lost as to why this works perfectly through Software Center and does not work when used in a Task Sequence. The program is exactly the same. Any insight would be greatly appreciated.
With 18.4 I get a failure of – 0x87D00324(-2016410844)
I found the issue (bad detection method, was using the one quoted here). I actually ended up doing 18.6 because it literally launched
I manually installed 18.6 on a random PC to get the proper detection and uninstall methods.
Uninstall
1
“C:\ProgramData\Package Cache{07163ee8-42d2-4a55-b2e9-db153fadb76f}\SSMS-Setup.ENU.exe” /uninstall /quiet /norestart
Detection Method
1
%programfiles(x86)%\Microsoft SQL Server Management Studio 18\Common7\IDE
I have just done this for 18.5, looks like it changes a few things especially around the detection method:
Uninstall String: C:\ProgramData\Package Cache\{819022b1-484d-41b2-8972-dbb375fd4f07}\SSMS-Setup-ENU.exe” /uninstall /quiet /norestartxe” /uninstall /quiet
Detection Method: C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE
Version equals: 2019.150.18333.0
SSMS got installed and i am able to see the application in programs
but in software centre its showing installation failed
whats the reason ?
where to check ?
how to determine the GUID for the delete string of different versions of SSMS?
This I’d like to know. You can find it in the registry but it would be nice to have an automated way of doing it to remove say version 17 before installing version 18. I’ve tried WMI but this doesn’t seem to find it; maybe because it’s referenced as a bundle in the registry? The GUID quoted in this article is for 17.9.1 but I also have the following;
17.9 – 14.0.17285.0 – {a0010c7f-d2e9-486b-a658-a1a1106847da}
17.9.1 – 14.0.17289.0 – {91a1b895-c621-4038-b34a-01e7affbcb6b}
18.1 – 15.0.18131.0 – {1643af48-a2d8-4806-847c-8d565a9af98a}
18.4 – 15.0.18206.0 – {7871da56-98b6-4ef8-b4d4-b7c310e14146}
Just in case anyone needs updated strings!
18.10 – 2019.150.18390.0 – C:\ProgramData\Package Cache\{c09f71ef-fff8-435a-bdc9-3c242a7c36f3}
For GA 18.0 I had to change the detection rule to point to “%programfiles(x86)%\Microsoft SQL Server Management Studio 18”, “ssms.exe” is still the same.
Thanks for that tip.
Hi, How do I go about to select which features I want installed?
I have to find that you. While writing the post, the intention was to deploy complete studio (default with options).
Hi all,
having issues with the deployment?
Ensure no quotes before SSMS and after .exe –> “SSMS-Setup-ENU.exe” /install /quiet /norestart SSMS-Setup-ENU.exe /install /quiet /norestart
Thanks Kapil, I have fixed the install and uninstall commands.
Hello Desai,
Have you tested uninstall string?
“%programfiles(x86)%\Microsoft SQL Server\140\tools\binn\managementstudio\ssms.exe” /uninstall /quiet
Really ssms.exe had this parameter?
Thank you.
BR
Oto
You get the switches when you open command prompt and run the executable with help switch. Here is my tweet on that – https://twitter.com/PrajwalDesai/status/910146297327345664
Please, try look at switches in version 17.3, for me not visible uninstall switch now. Than I must use different uninstall cmdline.
Thank you for reply.
Hi Oto, i downloaded SSMS version 17.4 and I see uninstall switch is still present. I don’t think it would have been removed in 17.3.
You do not get those switches, that you show in your tweet, when running “%programfiles(x86)%\Microsoft SQL Server\140\tools\binn\managementstudio\ssms.exe /?”
You get them when running “SSMS-Setup-ENU.exe /?”
I use “SSMS-Setup-ENU.exe /uninstall /quiet /norestart” for uninstalling the sccm package. When using guid it didnt remove the shortcuts.
I never mentioned that you get those switches using %programfiles(x86)%\… path. In the comments i clearly pointed out that “You get the switches when you open command prompt and run the executable with help switch”.
Then you need to clarify in your answer to Oto that it is the SSMS-Setup-ENU.exe you refer to. As he asks about ssms.exe.
You cannot run “ssms.exe /uninstall” as it doesnt contain that switch.
Prajwal : please look at your own screenshot: https://www.prajwaldesai.com/wp-content/uploads/2017/09/Deploy-SQL-Server-Management-Studio-using-SCCM-Snap4.jpg
Your verbiage also has it:
Specify the content location, commands to install and uninstall the software.
Install Program – “SSMS-Setup-ENU.exe” /install /quiet /norestart
Uninstall Program – “%programfiles(x86)%\Microsoft SQL Server\140\tools\binn\managementstudio\ssms.exe” /uninstall /quiet
Thanks Brachus. I have fixed the install and uninstall commands.
Prajwal – Your uninstall command line does not work.
Sorry for the delay. I have fixed the install and uninstall commands.
Hi Otto, I have fixed the install and uninstall commands.