First of all, in thinking about upgrading between server versions, what are the considerations that need to be made before upgrading?
- Upgrades from 32-bit to 64-bit architectures are not supported. All editions of Windows Server 2019 are 64-bit only.
- Upgrades from one language to another are not supported.
- If the server is a domain controller, see Upgrade Domain Controllers to Windows Server 2012 R2 and Windows Server 2012 for important information.
- Upgrades from pre-release versions (previews) of Windows Server 2019 are not supported. Perform a clean installation to Windows Server 2019.
- Upgrades that switch from a Server Core installation to a Server with a Desktop installation (or vice versa) are not supported.
- Upgrades from a previous Windows Server installation to an evaluation copy of Windows Server are not supported. Evaluation versions should be installed as a clean installation.
- You can convert the evaluation version of Windows Server 2019 Standard to either Windows Server 2019 Standard (retail) or Datacenter (retail). Similarly, you can convert the evaluation version of Windows Server 2019 Datacenter to the retail version.
After running into an error message enabling Storage Spaces Direct in Windows Server 2019, I quickly ran the Storage Spaces Direct validation test with the Test-Cluster cmdlet. This is what I saw in the result. As shown, the Storage Spaces Direct test resulted in an error that was plainly shown in the test of the cluster The operating system edition does not support Storage Spaces Direct. This was much more clear here than in the error from the command line with Storage Spaces Direct
Other than using the widely known command winver you can use PowerShell to get the currently installed version of Windows. To do that, use the command:
Dism /online /Get-CurrentEdition
Now, PowerShell provides a really cool way to determine the possible upgrade versions for the currently installed version of Windows. Use the following command:
Dism /online /Get-TargetEditions
To upgrade to the specified Target Edition determined by running the above command, we can use PowerShell again to perform the actual edition upgrade. To do that, use the command:
DISM /online /Set-Edition: /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula
One thing to note here, you cannot go to an Evaluation edition, such as ServerDatacenterEval. You must enter a valid product key to continue with the upgrade process.
As shown, at the end of the process, you will be prompted to reboot the server to complete the upgrade process.
The server will reboot. If you are connected to the console, you will see the indication the upgrade is proceeding along.
After just a few minutes, you should see the server come up to a login screen once again. After that, I logged in and quickly checked via the winver command to see if the upgrade to Windows Server 2019 Datacenter was successful and it was.
For further information, see Microsoft’s official post that shows information regarding Windows Server 2016 but that applies to Windows Server 2019 as well: https://docs.microsoft.com/en-us/windows-server/get-started/supported-upgrade-paths
If you are looking at how to Upgrade Windows Server 2019 Evaluation to Full Version Standard to Datacenter then PowerShell is certainly your friend here. By simply running a few commands in PowerShell, you can determine the currently installed Edition, see which Edition you are allowed to upgrade to, and actually performing the upgrade process. All said and done, the process only takes just a few minutes going from Standard Edition to Datacenter Edition of Windows Server 2019. As shown, this does require a reboot, but that should be expected. For me, the upgrade process was immensely quicker than totally reinstalling my test VMs with the needed Datacenter Edition of Windows Server 2019. Definitely keep the upgrade path in mind if you run into limitations imposed by running Windows Server 2019 Standard Edition.