【发布时间】:2013-09-16 15:45:56
【问题描述】:
我正在尝试创建一个 SQL 作业,该作业位于我喜欢称之为维护服务器的位置,所有其他服务器数据库的详细信息都位于该服务器上。所以我有一个存储过程来收集我拥有的所有必需数据,这个存储过程现在位于 MaintenanceServer.MaintenanceDB.pr_MyProcedure 中。
现在我想做的是。我在我的维护服务器上创建链接服务器,它指向我想要维护的所有其他服务器。我列表中的下一个是能够针对所有这些 LinkedServer 运行此过程 pr_MyProcedure。我有超过 25 台服务器需要维护,我想做的是对它们运行程序并将结果插入到我的本地维护数据库中。
有人能指出一个好方法吗?我也想听听这种方法的缺点。
感谢和干杯!
编辑:
我还考虑将 SP 存储在我的其他服务器的所有主数据库中,并在我的维护服务器上远程运行它们。然后我将使用OPENQUERY() 来收集我需要的所有结果。但是,我认为我不想触及我的服务器列表中的所有主数据库。请告诉我这是否会比我上面所说的更好。
【问题讨论】:
-
一个很好的方法来做这件事。你也试过什么?
-
嗨!感谢您的回复!完成此任务的一个好方法是我的意思是不会过多影响其他服务器的性能。我目前正在查看上面编辑部分中的那个,但就像我说的那样,我想我不想惹上主人。所以我问在理论上是否可以做我上面的问题。如果是,我想知道如何对那些链接的服务器运行查询。谢谢! :)
标签: sql-server stored-procedures sql-server-2008-r2 linked-server