Share via

Uninstall previous SQL components following SQL Server in-place upgrade

Mark Potter 0 Reputation points
2025-10-21T14:42:23.8666667+00:00
  • Hi, following an in-place upgrade from SQL Server 2016 to SQL 2019, the customer has now requested that the previous SQL components listed under Programs & Features be uninstalled. The components that remain are
  • Microsoft SQL Server 2016 (64-bit)
  • Microsoft SQL Server 2016 Setup (English)
  • Microsoft SQL Server 2016 T-SQL Language Services
  • Microsoft SQL Server 2016 T-SQL ScriptDom

Is there any risks or consequences that may be experienced on the newly upgraded SQL Server 2019 instance if these components were uninstalled?

Thanks

SQL Server Database Engine
0 comments No comments

Answer recommended by moderator

Marcin Policht 92,125 Reputation points MVP Volunteer Moderator
2025-10-21T17:52:26.4066667+00:00

After an in-place upgrade from SQL Server 2016 to SQL Server 2019, it's expected that some legacy components remain listed under Programs and Features — typically shared tools, libraries, or setup utilities that were not automatically replaced because they can be used side-by-side by different SQL versions.

Component Description Safe to remove after upgrade? Notes
Microsoft SQL Server 2016 (64-bit) This is just a registration entry for shared SQL 2016 components. Actual engine binaries should already be upgraded to 2019. Usually safe Verify that no older instance or shared feature (like SSRS 2016) still depends on it before removal.
Microsoft SQL Server 2016 Setup (English) Installer engine for SQL 2016—kept to support repair/uninstall of 2016 components. Safe to remove Removing it will only affect your ability to modify or uninstall 2016-era components later.
Microsoft SQL Server 2016 T-SQL Language Services Provides IntelliSense, parsing, and code analysis for tools like SSMS 2016 or Visual Studio extensions. Usually safe SQL 2019 installs its own T-SQL Language Services. Confirm no external tools still reference the 2016 DLLs.
Microsoft SQL Server 2016 T-SQL ScriptDom Shared parsing library used by SQL tooling (SSMS, DACFx, VS). Remove with caution Some older tools might still reference the 2016 ScriptDom assembly (especially if multiple SSMS versions coexist). Removing it could break those tools but not the SQL 2019 engine itself.

Uninstalling these should not affect the SQL Server 2019 database engine or its functionality. There are some potential side effects including:

  • Loss of backward compatibility for older tooling or scripts referencing 2016 libraries.
  • Inability to repair/uninstall 2016 components later.
  • Possible SSMS or Visual Studio warnings if they were using the 2016 ScriptDom.

Effectively, before removal, you should ensure:

  1. No other SQL 2016 instances or shared features (e.g., SSRS 2016) remain installed.
  2. You have the SQL 2019 setup media available for repair if needed.
  3. Optionally, take a VM snapshot or registry backup before uninstalling the 2016 shared components.

If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.

hth

Marcin

Was this answer helpful?


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.