Mamy zewnętrznego dostawcę, który próbuje zintegrować 2 różne aplikacje, w których obie bazy danych znajdują się w naszym wystąpieniu programu SQL Server z ponad 150 innymi bazami danych, i chcą utworzyć zadanie MSDB w celu „synchronizacji” 2 różnych aplikacji co 5 minut (początkowo chciałem uruchamiać go co minutę).
Moje początkowe przeczucie polega na tym, że zamiast tego powinni to zrobić w warstwie aplikacji za pomocą zaplanowanego zadania systemu Windows, a może nawet przerażającego wyzwalacza (do czego zwykle uciekamy się w takich sytuacjach).
Wolę, aby zadania MSDB były zarezerwowane dla zadań DBA w jak największym stopniu, aby zmniejszyć bałagan, a także natrafiłem na powolne zapytania do MSDB podczas przeglądania historii zadań z bardzo aktywnymi zadaniami takimi jak ta (które również zagłuszają i usuwają ważne historie zadań ważniejsze rzeczy, takie jak historie kopii zapasowych). Ale z drugiej strony, może moje preferencje są błędne i muszę zrobić trochę miejsca dla warstwy aplikacji w MSDB i zakasać rękawy i naprawić problemy związane z wczytywaniem historii zadań, gdy muszę zachować znacznie więcej wpisów historii, aby przechwycić ważne rzeczy, takie jak kopie zapasowe (lub wyczyść hiperaktywne wpisy zadań).
Inną kwestią, którą mam, jest to, że teraz muszę przyznać temu dostawcy uprawnienia „sysadmin” zamiast tylko uprawnienia „dbo” tylko na swoich bazach danych, gdy przeprowadzają aktualizacje za pośrednictwem interfejsu GUI, i mam nadzieję, że nie wysadzą przypadku, w którym moja misja jest krytyczna DB to (jedna z wad konsolidacji).
Wydaje mi się, że mogę umieścić je w innej „izolowanej” instancji, w której umieszczamy wszystkich dostawców, którzy nie grają dobrze, ale wtedy musimy ponownie skonfigurować aplikacje, aby wskazywały na nową instancję SQL ( westchnienie niestety nie jest trywialne w tym przypadku).
Sprzedawca już odpowiedział na moje obawy, mówiąc o tym, jak złe są wyzwalacze. Więc „trochę googlowałem” i wyszedłem pusty. Czy ktoś widział jakikolwiek link „wyglądający autorytatywnie”, że jest to zły pomysł i mogę go do niego skierować? Czy powinienem przyjąć ich podejście?
Nie sądzę, że kiedykolwiek pisałem na forum sql, zanim poprosiłem o pomoc, więc mam nadzieję, że moje zapytanie jest odpowiednio sformułowane.
EDYCJA: Korzystamy z SQL Server 2008 Enterprise R2 x64 SP1 (Dziękujemy za wskazanie, że zapomniałem wspomnieć o wersji!). Hmmm, mam nadzieję, że nie będą musieli zmieniać swoich skryptów aktualizacji MSDB, kiedy przejdziemy do nowszej wersji.
Dziękuję za Twój czas! Bogaty
sysadmin
pozwolenia na modyfikowanie zadań agenta SQL - sprawdź msdn.microsoft.com/en-us/library/ms188283(v=sql.105).aspx