Skip to content

Est. 2011·Microsoft Partner 7033487·Delivery under 3 min·Support 7 days a week

Your vault is empty.

License Error 17051

Error 17051: The SQL Server Evaluation Period Has Expired – What To Do Now

11 min read Updated October 4, 2026 SQL Server

Fix it now

Error 17051 is not a fault. Its published text is four words – the evaluation period has expired – and the service now refuses to stay up. Your databases are untouched on disk. The supported way back is an edition upgrade run from setup with a licensed product key.

Run while the service is briefly up; otherwise read the edition from the instance error log

SELECT SERVERPROPERTY('Edition'), SERVERPROPERTY('EditionID'), SERVERPROPERTY('ProductVersion');
  1. Back up every database, or take a file copy of the data and log files with the service stopped. Do this before you run setup.
  2. Run setup.exe from media for the same version, choose Maintenance, then Edition Upgrade.
  3. Work through Product Key, License Terms, Select Instance, Edition Upgrade Rules and Ready to Upgrade Edition. Services restart during the upgrade, so this is downtime.
  4. Confirm afterwards with SELECT SERVERPROPERTY('Edition'); rather than assuming the wizard did what you expected.

Evaluation upgrades to Enterprise, Standard or Developer. Microsoft states the upgrade from a free edition to a paid one is supported for stand-alone installations but not for clustered installations, so a failover cluster instance needs a different plan.

If the edition now reads what you bought and the service stays up, you are done. If not, the next section covers what expired, what did not, and the two ways forward.

Why it happens

Evaluation edition gives you the whole Enterprise feature set for a documented 180 days. The licensing check runs at service start, and once the term has passed it fails and the engine shuts itself down rather than starting in some reduced mode. There is no grace period and no notification state. Unlike Windows, SQL Server simply stops.

Nothing is wrong with your data. The database and log files are intact and readable by any instance of the same version or newer. What has expired is the licence attached to this instance, so the instance is what has to change. That is a short maintenance window if you have a key, and a data migration if you do not.

The supported route is an edition upgrade. Setup, run from media for the same version, has a Maintenance page containing Edition Upgrade. It takes a product key, checks the path is permitted, rewrites the edition recorded for the instance and leaves your databases where they are. No data moves. Microsoft’s documented upgrade paths from Evaluation Enterprise are Enterprise, Standard and Developer – there is no route down to Express – and the media has to be the same version, because this changes edition, not version.

Two details catch people. The upgrade restarts the services, so it is downtime rather than a background operation. And there is no in-place downgrade at all: moving to a lower edition means uninstalling and reinstalling with the media for the edition you want, then restoring.

The instance was installed from evaluation media without a key

You have this one if Nobody remembers choosing an edition, and the install was around six months ago.

  1. Buy the edition the workload actually needs rather than matching evaluation’s feature set out of habit.
  2. Run setup, Maintenance, Edition Upgrade, and enter the key.
  3. Start the service and confirm the edition with SERVERPROPERTY('Edition').

This is much the most common case. Downloaded media installs as evaluation when no key is supplied, so pressing Next through a wizard produces exactly this outcome 180 days later.

A key was bought but the edition never actually changed

You have this one if The licence was purchased some time ago, yet the instance still reports an evaluation edition.

  1. Buying a key changes nothing on its own. Run setup, Maintenance, Edition Upgrade, and enter it on the Product Key page.
  2. If setup refuses the key, it is for a different version or an edition the upgrade path does not allow. Compare the media version against SERVERPROPERTY('ProductVersion').
  3. Confirm the edition afterwards rather than trusting the wizard.

The upgrade itself fails during setup

You have this one if Setup starts the edition upgrade and stops. The setup logs carry the reason, and the Edition Upgrade Rules page may have flagged it first.

  1. Read Summary.txt in the Setup Bootstrap Log folder, then Detail.txt in the newest timestamped subfolder.
  2. If the log names a missing file under %windir%\Installer, that is the installer cache case: repair the installation with setup.exe /ACTION=REPAIR before retrying the upgrade.
  3. Clear the ordinary blockers – a pending reboot, media older than the installed build, a service that cannot start – and run the upgrade again.

0x84B20001 is the code Microsoft documents for a patch file that cannot be opened because it is missing from the installer cache. If you see it, fix the cache; it is not a rule failure.

The instance will not stay up long enough to work with

You have this one if The service stops immediately every time, and you cannot get a usable connection.

  1. Install a fresh, licensed instance of the same version or newer, on this machine or another.
  2. Copy the data and log files across, or restore from backups, and attach them to the licensed instance.
  3. Repoint applications, confirm everything works, then remove the expired instance.

This route is slower but entirely safe. Files from an expired evaluation instance are ordinary database files and attach normally to a licensed instance of the same version or newer.

It is a failover cluster instance

You have this one if The expired instance is clustered, and the edition upgrade is not an option Microsoft supports here.

  1. Do not attempt the in-place upgrade from a free edition on a cluster; Microsoft states it is not supported.
  2. Plan a licensed installation and a migration of the databases instead.
  3. Note the exception Microsoft draws: the restriction does not apply to stand-alone instances installed on a Windows Server failover cluster that participate in an availability group.

Full reference

The Edition Upgrade wizard, page by page

  1. Run setup.exe from the root of media for the same version, elevated.
  2. SQL Server Installation Center, then Maintenance, then Edition Upgrade.
  3. Restart the computer first if you are prompted to.
  4. System Configuration Checker, then OK.
  5. Product Key: enter the PID for the edition you bought, or select the free edition option.
  6. License Terms: read, accept, Next.
  7. Select Instance: choose the instance to upgrade.
  8. Edition Upgrade Rules: setup validates the configuration.
  9. Ready to Upgrade Edition: review the tree of options, then Upgrade. Services restart here.
  10. Complete: review the summary log link, close, and restart if prompted.

What upgrades to what

From To Restriction
Evaluation Enterprise Enterprise (Server+CAL or core), Standard, Developer Supported for stand-alone installations; not supported for clustered installations
Any edition A lower edition No in-place downgrade. Uninstall and reinstall with the media for the edition you want
Express, after upgrade A higher edition Post-upgrade steps are required: enable the SQL Server Agent service and set its service account

Confirming what you are dealing with

What you see What it means
The service stops seconds after starting, and the log records the expiry The term ended. An edition upgrade is the fix
The instance has been running roughly six months since install It was installed as evaluation, whether or not that was intended
SERVERPROPERTY('Edition') names an evaluation edition Confirmed, before you buy anything
17148 in the log around the shutdown An ordinary service stop notice from Service Control Manager. It is informational and explains nothing about the expiry
Edition upgrade fails naming a file under %windir%\Installer A missing cached patch file, not a licensing problem

Places to read the facts from

Command or place What it tells you
SELECT SERVERPROPERTY('Edition'), SERVERPROPERTY('EditionID'); Exactly which edition this instance believes it is
The instance error log Records the edition at each startup, and 17051 when the term has passed
setup.exe, Maintenance, Edition Upgrade The supported route to change edition without moving data
Installed features discovery report Edition and version of every instance on the machine
SELECT create_date FROM sys.databases WHERE database_id = 1; Approximates when this instance was installed, which dates the term

Things that do not work

  • Moving the system clock. Every backup timestamp, certificate check, Agent schedule and log entry on the machine depends on it, and availability groups and replication behave unpredictably when it moves.
  • Reinstalling evaluation over the top. There is no supported reset, and it means detaching and reattaching production databases for no lasting benefit.
  • Pointing production at Developer edition. It is free and carries the full feature set, but it is licensed for development and test use only, which is precisely why it catches organisations out at audit.
  • Waiting. There is no grace period on this one; the service will not stay up until the edition changes.

If the upgrade is not possible today

The migration route is entirely safe and costs only time. Stop the expired instance, copy the .mdf and .ldf files somewhere else, then attach or restore them on a licensed instance of the same version or newer. What does not come with the files is everything held in master and msdb: logins, jobs, operators, linked servers, credentials and history. Script those from the old instance while it is still available, preserving login security identifiers so database users are not orphaned when they arrive.

When a licence is the actual fix

This is one of the few errors where a licence genuinely is the fix and there is no free route around it. The evaluation term has ended and the engine will not run again until the instance is licensed. For an ordinary production workload that means SQL Server 2025 Standard (2-core pack), licensed against the cores the instance actually runs on, so the core count drives the quantity as much as the edition does. Enterprise is worth considering only if the workload needs what Enterprise adds over Standard – scale beyond Standard’s documented ceilings, or a capability Standard does not carry. Where the user population is small and countable, Server plus CAL may work out better, depending on what your agreement offers. Send Arco your core count and edition requirement and we will price it properly rather than guessing at the quantity.

Every code this article covers

Code What it points at Source
17051 SQL Server evaluation period has expired: the licensing check at service start has failed Microsoft Learn
17148 SQL Server is terminating in response to a stop request from Service Control Manager. Informational only, and logged for ordinary service stops as well as this one Microsoft Learn
0x84B20001 Setup could not open a patch file because it is missing from the Windows Installer cache; repair the installation rather than treating it as a licensing failure Microsoft Learn

Confirm the fix worked

  1. SELECT SERVERPROPERTY('Edition'); returns the edition you purchased.
  2. The service starts and stays running, including across a full reboot of the machine.
  3. The instance error log no longer records 17051 at startup.
  4. Applications reconnect, Agent jobs run, and a test backup completes.
  5. If the instance was Express before the upgrade, the SQL Server Agent service now exists, is enabled and has a service account.

Questions people ask about this

Can I extend the evaluation period?

No. The term is documented as 180 days and there is no supported extension. Reinstalling evaluation over the top to reset the clock is neither reliable nor supportable, and it means detaching and reattaching production databases for nothing.

Will I lose any data?

No. The data and log files are untouched by the expiry. If the instance cannot be upgraded in place, those files attach to a licensed instance of the same version or newer exactly as they are.

Can I move down to Express to avoid paying?

Not with an edition upgrade. Microsoft’s documented paths from Evaluation Enterprise are Enterprise, Standard and Developer, and there is no in-place downgrade to any edition. Moving to Express means a fresh Express installation and a restore, and your databases then have to fit inside Express’s documented limits.

Could I use Developer edition instead?

Developer edition is free and carries the full feature set, but it is licensed for development and test use only. Nothing in the software stops you pointing production at it, which is exactly why it is a problem at audit rather than at runtime.

What will a licence cost?

That depends on the edition and the cores the instance runs on, or on your user count if Server plus CAL suits you. The honest answer needs the core count first. Send it to us and we will price it rather than guess.

Related error codes

Was this article helpful?

Your feedback helps us improve our documentation.

Related articles

License Error Error 701: Insufficient System Memory on a Memory-Capped SQL Server Edition Free Fix Error 8909 and DBCC CHECKDB Allocation Errors: Repair Without Losing Rows Free Fix Error 8152: String or Binary Data Would Be Truncated – Find the Column Free Fix Error 20598: The Row Was Not Found at the Subscriber When Applying Commands
← Back to Knowledge Base