The title of the blog is little weird, but it was a question asked to me by a developer. Have you ever got such error messages which are strange yet difficult to comprehend? He told me that he has installed SQL Server 2016 developer edition from MSDN (which is free now):Â Download SQL SERVER 2016 Developer Edition for FREE
After installation, he contacted me and told that I am seeing the expiration date from below query. Why did this happen? What was the reason for this?
SELECT create_date AS 'SQL Server Installation Date' ,DATEADD(dd, 180, create_date) AS 'SQL Instance will Stop Working ON' FROM sys.server_principals WHERE NAME = 'NT AUTHORITY\SYSTEM'
Do I need to activate it? – He had asked me over email. This was an interesting question.
Above query is from the internet and even if you run on your server, you would get some expiry date. We need to keep in mind that this query is applicable ONLY and ONLY IF you are running an enterprise evaluation edition. So, here is the modified version of the query:
DECLARE @edition SQL_VARIANT SELECT @edition = SERVERPROPERTY('Edition') IF (@edition = 'Enterprise Evaluation Edition' OR @edition = 'Enterprise Evaluation Edition (64-bit)') BEGIN SELECT create_date AS 'SQL Server Installation Date' ,DATEADD(dd, 180, create_date) AS 'SQL Instance will expire on' FROM sys.server_principals WHERE NAME = 'NT AUTHORITY\SYSTEM' END ELSE BEGIN print 'You are running ' + convert(VARCHAR(100), SERVERPROPERTY('Edition')) + ' which won''t expire' END
Here is the output:
Have you encountered such situations? Did you install the wrong edition on your servers? Are you aware of such restrictions? Let me know. It was a great learning for me too.
Summary
You do not have to activate Developer Edition. It never expires. Expiry date query is not applicable for any edition other than evaluation.
Reference:Â Pinal Dave (https://darkslategrey-bat-805937.hostingersite.com)