Powershell 错误 运行 Get-dbaDatabase 搜索丢失的备份

Powershell error running Get-dbaDatabase searching for missing backups

我在 运行 执行此命令时遇到以下错误:

Get-dbaDatabase -sqlinstance server01 -NoFullBackup

错误:

Compare-DbaCollationSensitiveObject : Cannot bind argument to parameter 'Value' because it is null.
At C:\Program Files\WindowsPowerShell\Modules\dbatools.1.76\allcommands.ps1:22322 char:109
+ ... bject -Property Name -In -Value $lastCopyOnlyBackups.Database -Collat ...
+                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [Compare-DbaCollationSensitiveObject], ParameterBindingValidationExcept
   ion
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Compare-DbaCollationSensitiveObject

这发生在多个版本的 dbatools 上,我认为它与 dbatools 完全无关。当我 运行 在很久以前创建配置文件的另一个帐户上执行此操作时,我没有收到任何错误。新帐户配置文件似乎显示此错误。我认为这可能与 PowerShell 中的设置有关,但我不确定它可能是什么。

在较旧的帐户配置文件中,命令只是 return 什么都没有,基本上是一个空行。较新的账户全是return这个错误。我在从 Windows Server 2012 到 Windows Server 2019 的机器上有 运行 这个命令。

我曾尝试在新服务器上使用在旧服务器上工作的帐户,在这种情况下,我确实遇到了上述错误。这似乎与创建配置文件的时间有关,这让我觉得在组策略或机器策略级别设置了一些默认设置或行为。

PowerShell 版本为 5.1。

我希望有一些 PowerShell 专家可以为我指明正确的方向。

谢谢!

这已被 dbatools 团队确认为函数中的错误。这是 2021 年底实现的相当新的功能。这应该会在未来对 dbatools 的更新中得到修复。