Я бился головой об стену, пытаясь понять, как можно одновременно запускать сценарии обновления для нескольких баз данных в одном экземпляре SQL Server с использованием SMO. В наших средах постоянно увеличивается число баз данных, которые нуждаются в обновлении, и перебор по одной становится проблемой (слишком медленной).
Из того, что я понимаю, SMO не поддерживает параллельные операции, и мои тесты подтвердили это. Кажется, на уровне объектов сервера существует общая память, для таких вещей, как контекст DataReader, продолжает генерироваться исключение, такое как «читатель уже открыт». Я прошу прощения за то, что у меня нет точных исключений, которые я получаю. Я постараюсь получить их и обновить этот пост.
Я не эксперт по SMO и просто чувствую, что могу пройти честно. Не совсем уверен, что я подхожу к этому правильно, но это то, что нужно сделать, иначе наша производительность замедлится.
Так как бы вы, ребята, сделали что-то подобное? Я использую неправильную технологию с SMO? Все, что я хочу сделать, это выполнять сценарии SQL для баз данных в одном экземпляре сервера SQL параллельно.
Спасибо за любую помощь, которую вы можете оказать, Даниэль