Create a PowerShell Script Job Step
適用於:SQL Server Azure SQL 受控執行個體
重要
Azure SQL 受控執行個體目前支援多數 (但非全部) 的 SQL Server Agent 功能。 如需詳細資料,請參閱 Azure SQL 受控執行個體與 SQL Server 之間的 T-SQL 差異。
本主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,以在 SQL Server 中建立和定義可執行 PowerShell 指令碼的 SQL Server Agent 工作步驟。
開始之前
安全性
如需詳細資訊,請參閱< 實作 SQL Server Agent 安全性>。
我們會持續聽取您的意見: 如果您發現本文中有過時或不正確的內容 (例如步驟或程式碼範例),請告訴我們。 您可以按一下此頁面底部 [意見反應] 區段中的 [本頁] 按鈕。 我們通常會在隔天閱讀有關 SQL 的每一項意見反應。 謝謝。
使用 SQL Server Management Studio
建立 PowerShell 指令碼作業步驟
在 [物件總管] 中,連線至 SQL Server 資料庫引擎執行個體,然後展開該執行個體。
展開 SQL Server Agent,建立新作業或以滑鼠右鍵按一下現有作業,然後按一下 [屬性] 。 如需建立作業的詳細資訊,請參閱< 建立作業>。
在 [作業屬性] 方塊中,按一下 [步驟] 頁面,然後按一下 [新增] 。
在 [新增作業步驟] 對話方塊中,輸入一個作業 步驟名稱。
在 [類型] 清單中,按一下 [PowerShell] 。
在 [執行身分] 清單中,選取具有作業將會使用之認證的 Proxy 帳戶。
在 [命令] 方塊中,輸入將為作業步驟執行的 PowerShell 指令碼語法。 或者,請按一下 [開啟舊檔] ,然後選取包含指令碼語法的檔案。 如需 PowerShell 指令碼範例,請參閱下面的 使用 Transact-SQL 。
按一下 [進階] 頁面,以設定下列工作步驟選項:工作步驟成功或失敗時要採取什麼動作、SQL Server Agent 應該嘗試執行工作步驟多少次,以及應該多久重試一次。
使用 TRANSACT-SQL
建立 PowerShell 指令碼作業步驟
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。
-- creates a PowerShell job step that finds the processes -- that use more than 1000 MB of memory and kills them USE msdb; GO EXEC sp_add_jobstep @job_name = N'Weekly Sales Data Backup', @step_name = N'Kills all processes that use more than 1000 MB of memory', @subsystem = N'PowerShell', @command = N'Get-Process | Where-Object { $_.WS -gt 1000MB } | Stop-Process', @retry_attempts = 5, @retry_interval = 5 ; GO
如需詳細資訊,請參閱 sp_add_jobstep (Transact-SQL)。
使用 SQL Server 管理物件
建立 PowerShell 指令碼作業步驟
透過所選的程式語言,例如 Visual Basic、Visual C# 或 PowerShell,使用 JobStep 類別。