解释与 SQL Server 相关的未知 powershell 部分

解释与 SQL Server 相关的未知 powershell 部分

我正在从 Win2003 上的 SQL 2008 迁移到 Win2012 上的 SQL 2014。

旧系统中的一项工作有此步骤:

if ('$(ESCAPE_SQUOTE(INST))' -eq 'MSSQLSERVER') {$a = '\DEFAULT'} ELSE {$a = ''};
(Get-Item SQLSERVER:\SQLPolicy\$(ESCAPE_NONE(SRVR))$a).EraseSystemHealthPhantomRecords()

当我尝试在任一服务器上的命令行上运行此命令时,它都会失败。在 sql 作业中,一些参数似乎由 sql 代理设置。

这到底是干什么的?如何查看它的工作原理?

答案1

它使用 SQL 代理作业步骤令牌(这里解释) 将路径设置为默认实例的一个内容和命名实例的另一个内容。然后,它使用 SQLSERVER 提供程序获取对实例的 (策略?) 对象的引用并对其调用方法。

相关内容