У нас есть сторонний поставщик, который пытается интегрировать 2 разных приложения, в которых обе БД находятся на нашем экземпляре SQL Server, с 150+ другими БД, и они хотят создать задание MSDB для «синхронизации» 2 разных приложений каждые 5 минут (сначала они хотел запускать его каждую минуту).
Моя первоначальная догадка заключается в том, что вместо этого они должны каким-то образом делать это на уровне приложений с запланированным заданием Windows или, возможно, даже с ужасным триггером (к которому мы обычно прибегаем в подобных ситуациях).
Я предпочитаю сохранять задания MSDB зарезервированными для задач DBA в максимально возможной степени, чтобы уменьшить беспорядок в них, а также столкнулся с медленным запросом MSDB при просмотре историй заданий с такими сверхактивными заданиями (которые также заглушают и выпадают важные истории заданий более важные вещи, такие как истории резервного копирования). Но опять же, возможно, мои предпочтения неверны, и мне нужно выделить место для уровня приложений в MSDB, закатать рукава и исправить проблемы с историями заданий, которые загружаются вечно, когда мне нужно сохранить гораздо больше записей истории, чтобы захватить важные вещи, такие как резервные копии (или очистка гипер-активных записей работы).
Другая проблема, с которой я столкнулся, заключается в том, что теперь мне нужно предоставить этому поставщику права «sysadmin» вместо прав «dbo» только на свои БД, когда они выполняют свои обновления через графический интерфейс, и надеюсь, что они не взорвут тот случай, когда моя критически важная задача БД есть (один из минусов консолидации).
Я полагаю, что я могу поместить их в другой «изолированный» экземпляр, в который мы помещаем всех поставщиков, которые не очень хорошо играют, но затем нам нужно перенастроить приложения, чтобы они указывали на новый экземпляр SQL ( вздох, к сожалению, не тривиальный в этом случае).
Поставщик уже отодвинул мои опасения, говоря о том, насколько плохи триггеры. Итак, я немного «погуглил» на этом и вышел пустым. Кто-нибудь видел какую-либо ссылку "авторитетный вид", что это плохая идея, и я могу сослаться на них? Или я должен принять их подход?
Я не верю, что когда-либо писал на форуме sql, прежде чем просить о помощи, поэтому, надеюсь, мой запрос правильно оформлен.
РЕДАКТИРОВАТЬ: Мы работаем с SQL Server 2008 Enterprise R2 x64 SP1 (спасибо за указание, что я забыл упомянуть версию!). Хм, надеюсь, им не нужно менять свои сценарии обновления MSDB, когда мы перейдем на более новую версию.
Спасибо за ваше время! Богатый
sysadmin
изменение заданий агента SQL - посмотрите msdn.microsoft.com/en-us/library/ms188283(v=sql.105).aspx