我一直在拼命想弄清楚如何使用 SMO 对单个 SQL Server 实例中的多个数据库同时运行更新脚本。我们的环境有越来越多的数据库需要更新,并且一次迭代一个已经成为一个问题(太慢了)。
据我了解,SMO 不支持并发操作,我的测试已经证明了这一点。在服务器对象级别似乎有共享内存,对于 DataReader 上下文之类的东西,不断抛出诸如“阅读器已打开”之类的异常。对于我没有得到确切的例外情况,我深表歉意。我将尝试获取它们并更新此帖子。
我不是 SMO 方面的专家,老实说,我只是在摸索自己的方式。不确定我是否以正确的方式接近它,但这是必须要做的事情,否则我们的生产力将慢得像爬行一样。
那么你们会怎么做这样的事情呢?我是否在 SMO 中使用了错误的技术?我想要做的就是在单个 sql server 实例中对数据库并行执行 sql 脚本。
感谢您提供的任何帮助,丹尼尔