UPDATE: This has been fixed with SQL 2016 CU2 and SQL 2016 SP1 CU2.
UPDATE TO THE UPDATE: Today, July 3, 2018, I installed a brand new copy of SQL 2016 and patched it to SQL 2016 SP2 CU1. The .Net 3.5 framework was still not installed and I still had the same problems with database mail mentioned below until I manually installed it.
I’ve seen a lot of blog posts written about how SQL Server 2016 no longer requires .Net Framework 3.5 to be installed. This seems to be true to some extent; the SQL 2016 install program will no longer abort if it is not installed, like it did in previous versions.
And the SQL installer does not install the .Net Framework 3.5 on its own either. I installed SQL 2016 on three different machines and none of them had the .Net Framework installed before or after the SQL 2016 install completed.
However, I did run into one issue later on regarding database mail. I was able to configure it correctly and was even able to send a test email through SSMS without any errors. Unfortunately, the email was never delivered. Additionally, the database mail logs did not show database mail starting or attempting to send the message. I checked with my Exchange administrator and he said he never saw the SQL Server connecting to the mail server.
A check of the database mail table in msdb (sysmail_allitems) showed my messages sitting there with a status of Unsent.
After troubleshooting for a couple of hours and getting nowhere, we installed in the .Net Framework 3.5 and suddenly database mail started working.
This can be dangerous if you are relying on database mail to send alerts. I received no warnings or error messages when sending an email. All indications were that the mail was sent successfully. I only knew there was an issue because my standard build script sends an email and I knew to expect one when building a new server and I never got one.
I’ve not had much time yet to dig deeper into this and, as I mentioned, I’ve only tried this on 3 SQL Servers, but it has happened consistently on all three and the solution was the same on all three: installed .Net Framework 3.5. The root cause may turn out to be something else, but at least for right now, it seems SQL Server 2016 still needs .Net Framework 3.5 if you want database mail to function.
(And to clarify, I ran into this on three brand new installations. I have not done an in-place upgrade, so this might not occur in that situation.)
3 thoughts on “SQL 2016 May Need .Net Framework 3.5 After All”
According to https://support.microsoft.com/en-us/kb/3186435, this was fixed in SQL 2016 CU2. I haven’t tested yet.
Thanks for the update!