我在Server2012R2上使用WSUS服务器。报告功能真的很痛苦。
有时我只需要一份简单的报告来查看某个 OU 中的计算机列表中是否安装了特定的 KB。但 WSUS 报告不会给您这个简单的答案。
有没有更好的解决方案/软件可以生成报告?
答案1
WSUS 数据库存储以下类型的信息:
WSUS 服务器配置信息
描述每个更新的元数据
有关客户端计算机、更新以及客户端与更新交互的信息
选择数据库
Windows 内部数据库随 WSUS 一起提供。此版本的 SQL Server 没有用户界面或工具。管理员需要通过 WSUS 与这些产品进行交互。
Microsoft SQL Server 是 Microsoft 推出的功能齐全的数据库软件。WSUS 需要 SQL Server。如果您使用完整版 SQL Server,则 SQL Server 管理员应在 SQL Server 中启用嵌套触发器选项。
在 WSUS 管理员安装 WSUS 并在安装过程中指定数据库之前执行此操作。WSUS 安装程序启用递归触发器选项,这是一个特定于数据库的选项;但是,它不会启用嵌套触发器选项,这是一个服务器全局选项。
建议的解决方案(如果您选择 SQL Server 作为数据库):
一旦您转到 SQL Server 数据库来安装 WSUS 数据,您就可以SUSDB
在 WSUS 创建的数据库上触发自己的 SQL 查询。
WSUS 中有几个表和视图,您可以查询以获取相关详细信息。
获取特定系统中安装的所有 Windows 更新列表的示例查询:
select tbct1.IPAddress, tbct1.FullDomainName, tbct1.LastReportedRebootTime,vu.DefaultTitle
from SUSDB.dbo.tbUpdateStatusPerComputer AS tbuspc,
SUSDB.dbo.tbUpdate AS tbu ,
SUSDB.dbo.tbComputerTarget AS tbct1 ,
SUSDB.PUBLIC_VIEWS.vUpdate AS vu ,
SUSDB.PUBLIC_VIEWS.vUpdateAdditionalInfoUrl AS vuaiu
where tbuspc.SummarizationState in (4) and ipAddress like '<system-ip>'
and tbuspc.LocalUpdateID = tbu.LocalUpdateID
and tbuspc.TargetID = tbct1.TargetID
and tbu.UpdateID = vu.UpdateId
and vu.UpdateId = vuaiu.UpdateId
and vuaiu.LocaleId='1033';
-- here SummarizationState 4 means installed.
-- you can search on the web for different possible SummarizationStates in WSUS.