【问题标题】:Use powershell to excecute SQL Agent job使用 powershell 执行 SQL Agent 作业
【发布时间】:2020-04-05 11:04:18
【问题描述】:

我是 PowerShell 新手,需要帮助。
我在 SQL 代理作业中有一个作业,作业名称为“RunMeFirst”
我可以在 SQL Server 中运行此作业,但我想在 PowerShell 命令中运行。
有人可以帮我一步一步地告诉我我需要设置什么,以便我可以使用 PowerShell 命令来运行这项工作。
感谢您的帮助。

【问题讨论】:

  • 这显示了一种方法 >>> [已解决] 使用 Powershell 启动 SQL 代理作业 - Spiceworks — community.spiceworks.com/topic/…
  • 这个太复杂了不知道从何下手?我真的需要一步一步来。谢谢。
  • 不幸的是,我对 SQL一点都不熟练。 [blush] 希望有更多这方面技能的好心人能帮助...
  • 好的,谢谢你的帮助。
  • 不客气……[grin]

标签: sql-server powershell


【解决方案1】:

运行作业的一种方法是使用sp_start_job msdb 过程。这可以使用 .NET SqlClient 对象从 PowerShell 调用,如下例所示:

$connection = New-Object System.Data.SqlClient.SqlConnection("Data Source=YourServerName;Initial Catalog=msdb;Integrated Security=SSPI")
$command =  New-Object System.Data.SqlClient.SqlCommand("dbo.sp_start_job", $connection)
$command.CommandType = [System.Data.CommandType]::StoredProcedure
($command.Parameters.Add("@job_name", [System.Data.SqlDbType]::NVarChar, 128)).Value = "RunMeFirst"
$connection.Open()
[void]$command.ExecuteNonQuery()
$connection.Close()

【讨论】:

  • 更改正确的服务器名称连接后(如上)。以管理员身份运行 Powershell。将这些行粘贴到上面的 Powershell 命令中,没有任何反应。我错过了什么吗?
  • 我刚刚学会了如何安装powershell模块。我将继续研究,直到我可以运行这些行。
  • @ngoc,Windows 的现代版本包括 PowerShell,无需单独安装。搜索“Windows PowerShell ISE”(也在 Windows PowerShell 程序组下)并启动该工具。单击查看--脚本窗格并将代码粘贴到编辑器窗口中。按 F5 运行脚本。
猜你喜欢
  • 2016-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多