Six months ago today, you installed SQL Server Evaluation Edition. You told yourself you’d take care of that sooner or later, and…you forgot. Now, your SQL Server won’t start:
Error 17051: SQL Server evaluation edition has expired.
Awww, shucks. Good news though! You don’t have to uninstall & reinstall from scratch – there’s an easier way.
Go download SQL Server Developer Edition, and start the installation media download process. It’s going to download the bits into C:\SQL2019. Once the download has finished, go into Maintenance, Edition Upgrade (at the top):
At this point, you may need to set the date back a few days on your computer and disconnect it from the network (to make sure it doesn’t automatically update the date/time.) In theory, you shouldn’t need to do this – but in practice for me, I’ve needed to set the date back so that SQL Server could at least start during the upgrade process. If you’re running a VM, you will also need to configure the VM so that it doesn’t automatically update the date/time from the host. In VMware Fusion, go into Virtual Machine, Settings, Advanced, and uncheck the “Synchronize time” option.
Next up in the installer, choose which edition you’d like to upgrade to – not the one you already have, but the destination edition:

Next, pick the instance you’re upgrading. In my case, I just had one instance on my VM:
Then click upgrade:
After about 30 seconds, you’re back in business, and SQL Server is running again. If this screen sits idle, not doing anything, it’s likely because your date/time was set back to current again, and the SQL Server service is trying but failing to start. You’ll need to go fix that and try the process again. That’s okay. People like us don’t read the instructions the first time, do we? I feel you. It happened to me too, thus this blog post.
Now you can set the computer’s time back to current, enable time syncing again, connect it to the network, and get back to work.
10 Comments. Leave new
I got to that last window but the Ugrade button is disabled.
Never mind. It was actually doing the upgrade in the background without me having to click on that button. I just got the window with the Completed info. The Eval version was not expired yet.
As you said set the back date and removed from the network also but it shows that last screen with upgrade button disabled,waited for 3 minutes to complete.
It would be really appreciated if you can help on this.
Thanks
I don’t do free personal tech support, unfortunately.
THE UPGRADE OPTION DISABLE FOR SOME TIME LIKE 5 TO 10 INUTES, THEN IT UPGRADES AUTOMETICALL. SO FOR ALL PLEASE WAIT A WHILE AND SEE, IT WORKS.
THANKS A LOT BRENT OZAR.
YOU’RE WELCOME, MOHAMMAD RUSSELL
Brent Ozar, a legend is you. The biggest thing for sure was having to set the clock back — why the frog Microsoft didn’t throw a tiny routine in there to pop up and say “hey bud I can’t even upgrade because I can’t start the service because you’re past the evaluation deadline” is, well, I can’t say it’s beyond me since I’m well aware of how little they value the user experience sometimes.
Anyway. Cheers for this article; it didn’t save me from the initial heartburn but it definitely saved me an ulcer.
After setting the date back to a time where the SQL evaluation licence works, then stop the windows time service. Stopping the Windows time service is somewhat easier and less problematic for a virtual machine than disconnecting from the network.
I’ve just recently created my home lab, using VMware and evaluation versions of Windows and SQL. I’m curious, is there any reason to specifically use SQL Server Evaluation *over* SQL Server Developer Edition?
It seems to me that you might as well download and use SQL Developer Edition from the start and ignore the Evaluation version altogether, no?
there isn’t a developer version of Windows Server that I’m aware of, so I get that I need to deal to with the Evaluation version of that. But SQL?
Hi. For unrelated questions, check out a Q&A site like https://dba.stackexchange.com or https://sqlservercentral.com.