问题标签 [sql-agent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
77 浏览

sql - SQL 代理登录 - 发生了什么?

我有一个从 SQL 代理作业调用的 DTSX 包。

DTSX 包引用固定位置的文件(例如,e:\mssql\myfile.txt)。

在大多数机器上,这个位置存在,但在某些机器上我必须手动映射它(这不是问题 - 我知道更好的解决方案是使用包配置来动态提取文件位置,但这不是一个选项 -无论如何我想了解发生了什么)

我已将代理服务设置为以特定用户身份运行(例如myuser

当我以该用户身份登录并映射目录,然后直接运行 dtsx 包时,一切顺利。

当我通过 SQL 代理作业运行包时,找不到该文件。如果我将命令行作业步骤添加到代理作业以映射驱动器:

然后所有的作品文件也。

那么在后台发生了什么?即使我以该用户身份登录,SQL 代理用户怎么会要求驱动器映射。

0 投票
3 回答
11365 浏览

sql-server-2005 - SSIS DTS 包平面文件错误 - “连接中指定的文件名无效”

我有一个非常基本的 SSIS 包,它试图读取共享上托管的文件,并将其内容导入数据库表。当我在 SSIS 中手动运行该包时,它运行良好。但是,当我设置 SQL 代理作业并尝试执行它时,我收到以下错误:

以用户身份执行:DOMAIN\UserName。适用于 64 位的 Microsoft (R) SQL Server 执行包实用程序版本 9.00.3042.00 版权所有 (C) Microsoft Corp 1984-2005。版权所有。
开始时间:上午 10:14:17 错误:2010-05-03 10:14:17.75 代码:0xC001401E 源:DataImport 连接管理器“本地数据文件”
描述:文件名“\10.1.1.159\llpf\datafile.dat”连接中指定的无效。结束错误错误:2010-05-03 10:14:17.75 代码:0xC001401D
来源:DataAnimalImport
说明:连接“本地数据文件”验证失败。结束错误 DTExec:包执行返回 DTSER_FAILURE (1)。开始时间:上午 10:14:17 结束时间:上午 10:14:17 经过时间:0.594 秒。包执行失败。步骤失败。

这让我相信这是一个权限问题,但我为修复它所做的每一次尝试都失败了。

到目前为止我已经尝试过:

  • 作为 SQL 代理帐户 (DOMAIN\SqlAgent) 运行 - 产生相同的错误。DOMAIN\SqlAgent 对共享和上传的文件都具有“完全控制”权限。

  • 使用不同帐户的凭据 (DOMAIN\Account) 设置代理帐户 - 产生相同的错误。像上面一样,“完全控制”权限被授予对该帐户的共享。

  • 授予“所有人”对共享的完全控制权限(暂时!)。产生同样的错误。

  • 手动将文件复制到本地路径并使用 SQL 代理帐户进行测试。工作正常。

  • 添加了一个 ActiveX 脚本任务,该任务首先将远程托管的文件复制到本地路径,然后让 DTS 包引用本地文件。尝试运行脚本时出现完全非描述性(即使按照 SSIS 标准)错误。

  • 使用我自己的个人帐户凭据设置代理帐户 - 工作正常。但是,这不是一个可接受的解决方案,因为我的帐户上有密码策略,而且通常以这种方式设置是一种不好的做法。

有任何想法吗?我仍然相信这是一个权限问题。但是,我从各种搜索中或多或少地读到的内容表明,授予执行帐户对共享的权限应该是可行的。但是,这里不是这种情况(除非我在设置共享权限时遗漏了一些模糊的东西)。

0 投票
1 回答
1747 浏览

vbscript - CopyFile 上的 VBScript 权限被拒绝

我在 SQL 代理中运行 VBScript,但在第 34 行(第一次复制尝试)上收到“权限被拒绝”。我在 SQL 代理之外运行这个脚本没有问题

仅供参考:“X:\”驱动器映射到 SharePoint 文件夹。这可能是罪魁祸首。

0 投票
2 回答
1758 浏览

sql-server - 从远程 2005 服务器上的 SQL 代理作业调用 2008 服务器上的 SSIS 包

我正在尝试远程执行 SSIS 包,但未成功。该包驻留在 SQL Server 2008 实例上,我想从 2005 服务器上的作业中调用它。我得到的错误是:

无法加载包。步骤失败。

如果我从 2008 年到 2008 年,则没有错误。有任何想法吗?

0 投票
3 回答
10304 浏览

sql-server - 从远程服务器上的另一个作业调用 SQL 代理作业?

有没有办法在不使用链接服务器的情况下从远程服务器上的另一个作业触发作业?

原因是被触发的作业在2008上执行了一个SSIS包。调用作业驻留在2005服务器上,因此无法直接执行该作业。

服务器没有链接,我希望有一种方法可以互相调用。

0 投票
3 回答
425 浏览

sql-server - ms sql数据库中周期性写入时间戳的实现

任务:

每秒将时间戳写入 MS SQL 数据库表。

解决方案:

  1. 按计划写入时间戳的外部应用程序(例如 Sql 代理)。
  2. 存储过程,它在无限循环中写入时间戳。

问题。

  1. 哪种解决方案最好?
  2. 在存储过程中运行无限循环有什么缺点吗?
  3. 服务器重启后如何启动存储过程?
  4. 还有其他解决方案吗?
0 投票
1 回答
911 浏览

sql-server - 无需轮询即可获取 SQL 代理作业状态?

我试图找到一种方法让 SQL Server“SQL 代理”在作业步骤事件上运行一段特定的代码。我曾希望有一种方法可以使用 SMO 注册回调方法,以便在工作步骤开始或更改状态时调用我的代码。我没有任何成功。有什么方法可以将这些事件推送给我,而不是轮询?

0 投票
5 回答
19987 浏览

sql-server - SQL Server 代理 - 获取我自己的 job_id

我正在运行安装了 Service Pack 1 的 SQL Server 2008 64 位开发人员版。我有一个 SQL Server 代理作业。在这份工作中,我想获得我自己工作的 job_id。
在 MSDN ( http://msdn.microsoft.com/en-us/library/ms175575(v=SQL.100).aspx ) 上,您可以找到在作业步骤中使用令牌的说明。哇,太好了,这就是我要找的!只需使用(JOBID)。
从 SQL Server 2005 SP1 开始,您必须使用像 $(ESCAPE_NONE(JOBID)) 这样的宏。没问题。
但是,如果您尝试以下示例:

你得到:
'ESCAPE_SQUOTE'附近的语法不正确。(Microsoft SQL Server,错误:102)
好的,现在从头开始:

结果为 0xE33FE637C10B3C49A6E958BB3EF06959 但 job_id 为 37E63FE3-0BC1-493C-A6E9-58BB3EF06959
我认为“N'”隐式转换为(JOBID)的 NVARCHAR ......
好吧,我想我必须关心(乔比)。在第 168/169 页的“SQL Server 2008 管理”一书中,还有一个使用 (JOBID) 的示例:

结果:
'('附近的语法不正确。(Microsoft SQL Server,错误:102)
我现在完全糊涂了。请有人帮我提供一个好的建议或解决方案。感谢各种帮助。

最好的问候赫尔穆特

0 投票
3 回答
7025 浏览

sql-server - SQL 代理以管理员身份运行 SSIS 包

我正在尝试使用 SSIS 文件的步骤运行 SQL 代理作业,并且我需要以管理员身份运行此步骤。

我的包使用脚本任务来下载文件,作为浏览器我使用WATIN

我使用线程来启动此浏览器,因为此浏览器控件需要将线程设置为单线程单元。

此浏览器控件需要以管理员身份运行。

我已经为 Windows 管理员用户创建了一个凭据,一个代理 SSIS帐户。(SQL 代理用户不是 Windows 管理员)。

但 SSIS 包尚未以管理员身份运行。我怀疑这与UAC有关。

一些细节:

  • SQL 代理帐户不是 Windows 管理员
  • 使用 Windows Server 2008 R2
  • 我的包是从文件系统运行的。
  • 如果我以管理员身份运行该软件包,则该软件包仅适用于 BIDS(如果不是管理员不起作用)
  • 作业步骤配置为运行的代理帐户是 windows admin。

任何帮助表示赞赏!

0 投票
1 回答
5402 浏览

sql - SQL 代理 -- 邮件错误 5.7.1 客户端无权作为此发件人发送

所以我最近用以下服务器配置了一个完整的实验室环境:

域名:mytekkilab.com

服务器 1:DC-08-01 服务器 2:SQL-03-01 服务器 3:MAIL-08-01 服务器 4:TS-08-01 服务器 5:WS-08-01

我的终端服务器 (TS-08-01) 安装了 Microsoft Office,并在用户 sqlagent@mytekkilab.com 上配置了 Outlook。从交换服务器发送和接收电子邮件(2007 SP3 -- MAIL-08-01)。问题出在 SQL 代理数据库邮件中。使用 sqlagent 配置配置文件和帐户时。我尝试发送一封测试电子邮件并在我的 sql server 邮件日志中获取以下行:

04/21/2011 11:22:05,,Error,23,由于邮件服务器故障,邮件无法发送给收件人。(使用帐户 2 (2011-04-21T11:22:05) 发送邮件。异常消息:无法将邮件发送到邮件服务器。(邮箱不可用。服务器响应为:5.7.1 客户端无权作为此发件人发送).),256,10,,4/21/2011 11:22:05 AM,sa

在过去的 2.5 小时里,我一直在研究,似乎无法找到解决此问题的方法。如果可以,请在您想到时告诉我。smtp 再次为这个用户在任何地方工作。OWA、Outlook、命令 smtp 等...

提前感谢您的帮助!-迈克 D