在查询分析器中可执行的存储过程,为什么在作业中,每1分钟调用一次执行,就报错,详细内容请进

booksfount 2006-02-23 03:14:41
我们这里有两个服务器a,b,分布在不同的网段,a在中心,b分散在大约外面20公里外

我想达到的目的是想把a的数据 同步到下属单位的 b服务器上,所以a上建立了b的链接服务器,然后写了一个触发器,一新增,就增加a的某表数据到a的一个需要同步的表中。 然后在a上一个存储过程每1分钟定期执行,检查这个同步表有数据,就插入到b数据库的相关表,并删除a表的 同步表内容(在这个存储过程中同时修改了两个服务器的数据)。没有在a定制作业时,我手工执行存储过程可以,但是,在作业中调用执行,就报错:
---------------
执行用户: VPNSERVER\Administrator。用户 '(null)' 登录失败。原因: 未与信任 SQL Server 连接相关联。 [SQLSTATE 28000](错误 18452) [SQLSTATE 01000](错误 7312). 步骤失败。
-------------
在a、b服务上都检查了安全验证方式是混合模式的。

作业调用语法:exec gy_proc_insDept



...全文
171 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
booksfount 2006-02-24
  • 打赏
  • 举报
回复
谢谢,问题解决了,按照hisi(海山)(随机种子) 的操作

右键SQLServer代理->属性->连接
改成用SQLServer帐户登录 ,解决的

很感谢大家。结贴了
rouqu 2006-02-23
  • 打赏
  • 举报
回复
应该就是上面说的了 安全背景不同导致访问限制 改为SQL认证
hisi 2006-02-23
  • 打赏
  • 举报
回复
你在企业管理器中右键SQLServer代理->属性->连接
改成用SQLServer帐户登录,然后重建作业,试试.
booksfount 2006-02-23
  • 打赏
  • 举报
回复
观察查询分析器是用sa帐号。然后,检查作业的所有者,也是sa
可是作业执行就是不行。提示错误怎么会是
------
执行用户: VPNSERVER\Administrator。用户 '(null)' 登录失败。
----------
为什么执行用户是VPNSERVER\Administrator而不是sa呢?我看到作业的历史记录写道是sa调用了作业,后面的出错信息,就是上面的了。

to bqj(听雨)
这个存储过程执行的数量很小,所以就定制为1分钟了(我试验一下2分钟也不行)。本来准备用触发器同时更新两个数据库的数据,但是牵涉到分布式事务的问题,一直没有解决,才走了这样一条弯路,定时执行存储过程



bqj 2006-02-23
  • 打赏
  • 举报
回复
有些任务一分钟间隔是不行的,还未转回完成状态!
rouqu 2006-02-23
  • 打赏
  • 举报
回复
把作业所有人换成sa试试
rouqu 2006-02-23
  • 打赏
  • 举报
回复
检查作业的所有人
wgsasd311 2006-02-23
  • 打赏
  • 举报
回复
你在查询分析器是用什么帐号登录的(SQL 还是 WINDOWS)

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧