sql-server-agent相关内容

如何防止 Sql Server 作业同时运行

我的 SQL 代理中有一些预定的作业: Job1,每 2 分钟执行一次 Job2,每 10 分钟执行一次 Job3,每 15 分钟执行一次 如您所见,多个作业可以同时运行.当这些作业同时运行时,会导致 CPU 使用率达到 100%. 有解决办法吗?有没有办法控制并发运行的作业数量?注意:我需要这些作业在适当的时间内大约运行. 解决方案 通过 sp_getapplock ..
发布时间:2021-12-28 23:09:02 数据库

在不同时间使用不同参数执行相同的 SSIS 包

我有一个 2011 年晚上 8 点运行的 SSIS 包. 我想在 2010 年晚上 8:30 运行相同的包. 我制作了一个 SSIS 包配置文件并接受“年份"作为参数.每当我运行时,我需要打开一个文件,更改值并运行它. 是否可以动态设置时间表和设置年份值? 或者使用2个不同的配置文件是解决它的唯一方法? 谢谢大家. 解决方案 使用配置文件方法的挑战在于您需要不 ..
发布时间:2021-12-13 08:56:10 其他开发

在 Sql Server 代理上运行 32 位 Powershell 脚本

我有一个运行 32 位 com 对象的 powershell 脚本,所以当我在 Powershell 64x 中运行它时它失败了,但在 86x 中运行良好 当我在 Sql Server 代理作业中运行它时,它具有相同的 64x 故障. 有没有办法解决这个问题?喜欢 SSIS 包? 解决方案 通过WOW64路径调用可以直接调用32位版本的PowerShell: %SystemR ..
发布时间:2021-11-25 00:09:50 C#

SQL Server - TSQL 检测因超限而错过的代理作业

我正在尝试使用 TSQL 来检测 JOB 是否已经超出并错过了下一个计划. 场景:作业计划每小时运行一次(可能启用了多个计划),但由于网络延迟等原因,作业停止了 10 分钟,现在运行了 90 分钟,因此错过了它每小时开始. 有一个名为 msdb.dbo.sysjobactivity 的表,其中有一个名为 next_scheduled_run_date 的列,但此日期仅在当前运行的作业完 ..
发布时间:2021-09-10 19:44:22 数据库

SQL Server 作业/计划 - 美国与英国夏令时调整

SQL Server 作业/计划 - 美国与英国的夏令时调整 我们有一台位于英国的服务器,它需要在 16:30(美国中部时间 - 这可能看起来很奇怪,但由于某些数据的可用性)需要运行 SQL 代理作业.通常这不会成为问题,因为英国和美国之间的时差是 6 小时,所以我们将工作安排在 22:30. 但由于英国和美国在 3 月和 11 月为夏令时在不同时间调整时钟,因此英国和美国之间的时差为 ..
发布时间:2021-09-08 18:35:47 数据库

SQL Server:如何每小时运行一次查询,并将结果存储在表中?更新时替换它们

我有一个耗时 5 分钟的繁重查询,我希望将其结果存储在一个表中,供后端查询. 此外,表格应该每小时更新一次,并用新数据完全替换表格的内容. 我找到了这个服务器代理解决方案,根据我的理解,我应该这样做: 创建结果表. 创建一个存储过程,用于删除结果表数据、运行 5 分钟查询并插入新数据. 创建间隔运行该过程的服务器代理作业. 这是最佳方式吗? 这是有问题的查询.它跨 ..
发布时间:2021-08-30 19:53:35 数据库

SQL 代理命令行未保存

我有一个正在尝试安排的 SSIS 包.我在 SQL Server 代理下创建了一个新作业.在作业步骤的命令行选项卡上,我选择“手动编辑命令行". 当我在作业步骤中从选项卡切换到选项卡时,更改会保留,但每当我退出并保存作业时,更改都会丢失. 知道发生了什么吗? 我使用的是 SQL Server 2008. 解决方案 这是一个已确认的错误,但我的团队使用了以下解决方法: ..
发布时间:2021-08-27 20:20:20 数据库

SQL Server 代理 - SSIS 包 - 错误 0x80131904 - 超时已过期

最近在 SQL Server 代理计划作业中随机出现了一系列以下错误,我一直无法找到解决方案. 该错误很少发生,但对于每日计划的作业通常每周发生一次,但在任意数量的不同作业中且并不总是相同的作业.每个作业都共享一个事实,即它从运行该作业的同一服务器执行 SSIS 包.它也总是运行几乎正好 30 秒的经过时间,我猜这是超时阈值.如果服务器只是连接到它自己的 SSIS 目录,我不确定为什么它会超 ..
发布时间:2021-08-27 18:57:39 数据库

在 2005 SQL Server 中从 SQL 代理作业运行脚本时,Powershell Transcript 为空

我有一个复杂的 Powershell 脚本,它作为 SQL 2005 服务器代理作业的一部分运行.该脚本运行良好,但它使用“Start-Transcript $strLogfile -Append"命令将其所有操作记录到脚本文件中.问题是成绩单总是空的.它添加了页眉和页脚以指示抄本正在开始和停止,但实际上并没有记录任何内容.示例: ************************Windows ..
发布时间:2021-08-26 19:15:14 其他开发

使用 SQL 代理运行 SSIS 包时出现问题 - 因“DTSER_FAILURE(1)"而失败;

我有一个存储在 MSDB 数据库中的 SSIS 包,当我执行它时可以正常工作.它将在 SA 帐户下运行或将使用 Windows 安全性. 我想安排这个作业与 SQL 代理一起运行,但是当我这样做时,我收到一个奇怪的错误,无论我尝试什么配置,它都会失败并显示以下错误: 以用户身份执行:SERVER\SYSTEM.返回 DTSER_FAILURE (1).开始:09:25:03 完成:09 ..
发布时间:2021-08-26 19:09:14 数据库

如何在 SQL 中获取上次运行的作业详细信息

如何使用 SQL 在 SQL Server 代理中获取上次运行的作业详细信息,包括仅针对上次运行的作业(不是作业结果)的步骤详细信息,因为我想在应用程序中显示此内容 请帮助被困于此多年 这是我一直在下面使用的代码,它带回了作业历史记录中所有作业的所有步骤, 但是,我只想查看上次运行作业 的步骤 谢谢 使用 msdb走SELECT j.name JobName,h.step_ ..
发布时间:2021-08-25 20:34:55 数据库

SQL Server 代理作业帐户问题

我使用的是 SQL Server 2008.我对运行 SQL Server 代理作业时将使用哪个帐户感到困惑.我的困惑是, SQL Server 代理作为 Windows 服务,我们可以从 Windows 服务管理控制台控制它,从那里我们可以设置帐户来运行 SQL Server 代理(我的计算机中的本地系统); 我可以设置运行 SQL Server 代理作业级帐户吗? 我能否在每个步骤中 ..
发布时间:2021-08-25 19:58:59 数据库

自动创建 SQL Server 作业

我正在编写 SQL Server 部署脚本,它会在特定的 SQL Server 服务器/实例上自动创建 SQL Server 作业.我发现我可以通过使用脚本作业作为 => 创建到来提取可用于自动创建 SQL Server 作业的 sql 语句. 我的困惑是,我发现数据库名称和所有者帐户名称在生成的 sql 脚本中是硬编码的.当我在另一台计算机上使用sqlcmd执行sql脚本进行部署时,数据库 ..
发布时间:2021-08-25 19:55:10 数据库

SQL Server 代理作业超时

我刚刚让一个预定的 SQL Server 作业运行的时间比平时长,我真的可以设置超时以在一定时间后停止它. 我可能对此有点盲目,但我似乎找不到设置作业超时的方法.有人知道怎么做吗? 谢谢 解决方案 作为夜间作业处理子系统的一部分,我们做了类似下面的代码——实际上比这更复杂;例如,我们正在处理多个相互依赖的作业集,并从配置表中读取作业名称和超时值 - 但这抓住了这个想法: D ..