web-dev-qa-db-ja.com

SQL Server 2014の「syspolicy_purge_history」ジョブが失敗し続ける

SQL Server 2014を使用していて、ジョブ「syspolicy_purge_history」がステップ3の「ファントムシステムヘルスレコードの消去」で失敗し続け、何が失敗の原因なのかわからないので、私を夢中にさせています。

ここにコマンドがあります:

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

私が得たエラーメッセージは:

ユーザーとして実行:jonbrown。ジョブステップは、PowerShellスクリプトの2行目でエラーを受け取りました。対応する行は '(Get-Item SQLSERVER:\ SQLPolicy\xyz\T $ a).EraseSystemHealthPhantomRecords()'です。スクリプトを修正し、ジョブを再スケジュールしてください。 PowerShellによって返されるエラー情報は次のとおりです: 'サーバーに接続できませんでした。 SQL Serverへの接続を確立中にネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからなかったか、アクセスできませんでした。インスタンス名が正しいこと、およびSQL Serverがリモート接続を許可するように構成されていることを確認してください。 (プロバイダー:SQLネットワークインターフェイス、エラー:26-指定されたサーバー/インスタンスの検索エラー) '。プロセス終了コード-1。ステップは失敗しました。

2
Kefash

Windows Server PowerShellパスでこれを試すことができますか?

PS C:\Windows\system32> Get-ExecutionPolicy -list

     Scope            ExecutionPolicy
     --------         ------------------
     MachinePolicy    Undefined
     UserPolicy       Undefined
     Process          Undefined
     CurrentUser      Undefined
     LocalMachine     Restricted

..SQL Serverパスでも同じ:

PS SQLSERVER:\> Get-ExecutionPolicy -list

     Scope            ExecutionPolicy
     --------         ------------------
     MachinePolicy    Undefined
     UserPolicy       Undefined
     Process          RemoteSigned
     CurrentUser      Undefined
     LocalMachine     Restricted

実行ポリシーが「制限付き」に設定されている場合は、「RemoteSigned」または「Unrestricted」に設定してみてください。

Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy Unrestricted

または

Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy RemoteSigned

Windows PowerShellSQL PowerShellの両方のコンソールでこの実行ポリシーを設定する必要があることに注意してください。

1
Filip Holub

これはずっと前に聞いた質問で、問題は解決しました。しかし、それはまだ見られていることに気づいたので、問題を解決するために何をしたかを述べます。

SQL構成マネージャーを開き、インスタンス名が更新されたときにエイリアスを追加しました。その後、接続は成功し、ジョブはエラーなしで完了しました。

enter image description here

0
Kefash