现在在夜间总是不能自动调度执行。我若用手工启动该项作业,正常时执行最多五分钟,现在执行几个小时,且最后的运行结果是作业被取消。
我以为是数据源出错,结果在本地包内手工启动是正常的,这就证明包和数据源都没问题。在作业中调度却迟迟没有结果。
问题很急, 不知各位有没有遇到过类似的问题?怎么解决? 盼答复。
多谢了。
6 个解决方案
#1
1、看看是不是夜间自动执行的时候相关资源(数据源或者目的表)是不是被其他进程锁定。
2、看看你的代理是否打开。
2、看看你的代理是否打开。
#2
SQLAGENT服务是不是没有运行?
如果手工操作正常,而自动执行有问题,很有可能是启动SQLAGENT服务的账号的问题,你检查一下是用什么账号在启动SQLAGENT及这个账号是否有权限访问你的数据源。
如果手工操作正常,而自动执行有问题,很有可能是启动SQLAGENT服务的账号的问题,你检查一下是用什么账号在启动SQLAGENT及这个账号是否有权限访问你的数据源。
#3
to:ruolink(诸葛若云)
我白天手工的启动本地包1分钟成功后, 接着手工启动作业, 要等待两三个钟头, 最后报作业被取消。
估计不是被其他进程锁住了。
to:icevi(按钮工厂)
能告诉我在哪儿可以看到启动SQLAGENT服务的账号?
这个服务一直是开着的。
谢谢。
我白天手工的启动本地包1分钟成功后, 接着手工启动作业, 要等待两三个钟头, 最后报作业被取消。
估计不是被其他进程锁住了。
to:icevi(按钮工厂)
能告诉我在哪儿可以看到启动SQLAGENT服务的账号?
这个服务一直是开着的。
谢谢。
#4
在“控制面板-系统工具-服务-SQLSERVERAGENT”
因为用SQLSERVERAGENT执行包时,是以启动这个服务的用户帐号来执行的,如果包中所有连接都是使用windows 身份验证,则用于启动AGENT的账号也必须存在于远程系统上。
要确认一下这个账号有足够的权限访问UNC路径共享和执行包所需的文件。如果使用系统账号启动AGENT,收该账号不具有访问远程系统的权限。在包中,绝对不要使用映射驱动器,要使用路径定位网络资源。
因为用SQLSERVERAGENT执行包时,是以启动这个服务的用户帐号来执行的,如果包中所有连接都是使用windows 身份验证,则用于启动AGENT的账号也必须存在于远程系统上。
要确认一下这个账号有足够的权限访问UNC路径共享和执行包所需的文件。如果使用系统账号启动AGENT,收该账号不具有访问远程系统的权限。在包中,绝对不要使用映射驱动器,要使用路径定位网络资源。
#5
icevi(按钮工厂)
我已照着把SQLSERVERAGENT中的帐号由LOCALSYSTEM改成了administrator。
应该可以通过包中所有连接的WINDOWS身份验证。但还是不能运行作业。
我也将这个用户加入到包中目的表的DB_OWNER角色。
包中源数据的连接是用的OTHER ODBC, 已指明了它的USERID 和PASSWORD,包也可以运行。 看来权限是没有问题。
但作业还是运行1个多小时后被取消。
请你再帮助想想原因。 谢谢。
我已照着把SQLSERVERAGENT中的帐号由LOCALSYSTEM改成了administrator。
应该可以通过包中所有连接的WINDOWS身份验证。但还是不能运行作业。
我也将这个用户加入到包中目的表的DB_OWNER角色。
包中源数据的连接是用的OTHER ODBC, 已指明了它的USERID 和PASSWORD,包也可以运行。 看来权限是没有问题。
但作业还是运行1个多小时后被取消。
请你再帮助想想原因。 谢谢。
#6
因为不知道你的包是怎么设计的,所以也不好说。
建议你在DTS包的属性里设置“将包执行记录日志记录到SQL SERVER”,在调度失败后,查看错误日志,看错误是在哪里发生的。还有其它跟踪手段也可以试,这样有助于找出问题所在。
建议你在DTS包的属性里设置“将包执行记录日志记录到SQL SERVER”,在调度失败后,查看错误日志,看错误是在哪里发生的。还有其它跟踪手段也可以试,这样有助于找出问题所在。
#1
1、看看是不是夜间自动执行的时候相关资源(数据源或者目的表)是不是被其他进程锁定。
2、看看你的代理是否打开。
2、看看你的代理是否打开。
#2
SQLAGENT服务是不是没有运行?
如果手工操作正常,而自动执行有问题,很有可能是启动SQLAGENT服务的账号的问题,你检查一下是用什么账号在启动SQLAGENT及这个账号是否有权限访问你的数据源。
如果手工操作正常,而自动执行有问题,很有可能是启动SQLAGENT服务的账号的问题,你检查一下是用什么账号在启动SQLAGENT及这个账号是否有权限访问你的数据源。
#3
to:ruolink(诸葛若云)
我白天手工的启动本地包1分钟成功后, 接着手工启动作业, 要等待两三个钟头, 最后报作业被取消。
估计不是被其他进程锁住了。
to:icevi(按钮工厂)
能告诉我在哪儿可以看到启动SQLAGENT服务的账号?
这个服务一直是开着的。
谢谢。
我白天手工的启动本地包1分钟成功后, 接着手工启动作业, 要等待两三个钟头, 最后报作业被取消。
估计不是被其他进程锁住了。
to:icevi(按钮工厂)
能告诉我在哪儿可以看到启动SQLAGENT服务的账号?
这个服务一直是开着的。
谢谢。
#4
在“控制面板-系统工具-服务-SQLSERVERAGENT”
因为用SQLSERVERAGENT执行包时,是以启动这个服务的用户帐号来执行的,如果包中所有连接都是使用windows 身份验证,则用于启动AGENT的账号也必须存在于远程系统上。
要确认一下这个账号有足够的权限访问UNC路径共享和执行包所需的文件。如果使用系统账号启动AGENT,收该账号不具有访问远程系统的权限。在包中,绝对不要使用映射驱动器,要使用路径定位网络资源。
因为用SQLSERVERAGENT执行包时,是以启动这个服务的用户帐号来执行的,如果包中所有连接都是使用windows 身份验证,则用于启动AGENT的账号也必须存在于远程系统上。
要确认一下这个账号有足够的权限访问UNC路径共享和执行包所需的文件。如果使用系统账号启动AGENT,收该账号不具有访问远程系统的权限。在包中,绝对不要使用映射驱动器,要使用路径定位网络资源。
#5
icevi(按钮工厂)
我已照着把SQLSERVERAGENT中的帐号由LOCALSYSTEM改成了administrator。
应该可以通过包中所有连接的WINDOWS身份验证。但还是不能运行作业。
我也将这个用户加入到包中目的表的DB_OWNER角色。
包中源数据的连接是用的OTHER ODBC, 已指明了它的USERID 和PASSWORD,包也可以运行。 看来权限是没有问题。
但作业还是运行1个多小时后被取消。
请你再帮助想想原因。 谢谢。
我已照着把SQLSERVERAGENT中的帐号由LOCALSYSTEM改成了administrator。
应该可以通过包中所有连接的WINDOWS身份验证。但还是不能运行作业。
我也将这个用户加入到包中目的表的DB_OWNER角色。
包中源数据的连接是用的OTHER ODBC, 已指明了它的USERID 和PASSWORD,包也可以运行。 看来权限是没有问题。
但作业还是运行1个多小时后被取消。
请你再帮助想想原因。 谢谢。
#6
因为不知道你的包是怎么设计的,所以也不好说。
建议你在DTS包的属性里设置“将包执行记录日志记录到SQL SERVER”,在调度失败后,查看错误日志,看错误是在哪里发生的。还有其它跟踪手段也可以试,这样有助于找出问题所在。
建议你在DTS包的属性里设置“将包执行记录日志记录到SQL SERVER”,在调度失败后,查看错误日志,看错误是在哪里发生的。还有其它跟踪手段也可以试,这样有助于找出问题所在。