我正在尝试理清许可证问题,并且正在查看集群中的几个 SQL 2008 框,但我看不到任何地方标有企业版,即使我知道它正在运行企业版。
我需要弄清楚这一点,因为我有几个位于虚拟机上的报告服务器,它们可能运行或可能不运行企业版。
我无法通过查询执行此操作,因为报告服务器上未安装数据库服务。但是,我仍然需要许可这些设备
答案1
从KB321185:
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
答案2
如果你可以向服务器发起查询,那么你可以执行
SELECT @@version
@@版本返回正在运行的 SQL Server 版本的完整描述,包括版本和编号。
如果您想获取此信息但无法连接到 SQL Server 来执行查询,您可以访问注册表并转到注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL 服务器\INSTANCE_NAME\Setup\
这里有两个值描述安装的版本:
- 版:包含已安装版本的名称
- 补丁级别:包含完整的版本号
答案3
在目录 /MSSQL/LOG 中的日志文件中记录日志。SQL 日志文件将被称为 ERRORLOG.x,其中 x 是一个数字,通常最大为 6,它仅表示日志文件循环的位置。
在记事本/写字板中打开这些内容,服务器启动时应显示版本;例如,我的一个服务器有以下条目
2009-05-17 00:00:01.86 spid89 Microsoft SQL Server 2005 - 9.00.3077.00 (X64)
Dec 17 2008 20:40:08
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition (64-bit) on Windows NT 5.2 (Build 3790: Service Pack 2)
如果你定期循环查看日志,并且没有重启过服务器,那么你可能会遇到问题,但除此之外,这应该会有所帮助
答案4
我想我找到办法了。
有一个文件:C:\Program Files\Microsoft SQL Server\100\License Terms\SQLServer2008_License_ENT_1033.rtf
这似乎表明已安装了企业版。
请记住,我查看的特定服务器没有安装任何数据库服务。这使我无法使用日志或 SQL 查询来识别版本。