Ponieważ jestem DBA (aw wielu przypadkach de facto sysadmin), SQL Server jest instalowany na prawie każdym serwerze, z którym muszę regularnie pracować. Ostatnio zdałem sobie sprawę, że używam SQL Agenta jako harmonogramu zadań w prawie każdym przypadku, a nie natywnego harmonogramu zadań Windows.
Z mojej perspektywy SQL Agent ma wiele zalet w porównaniu z natywnym Harmonogramem zadań Windows:
- Zdalne (z mojej stacji roboczej) uruchamianie / zatrzymywanie / monitorowanie zadań
- Wspólne harmonogramy (zamiast każdego zadania na własną rękę)
- Wiele kroków i kontrola przepływu
- Różne rodzaje zadań
- Alerty o niepowodzeniu / zakończeniu
- Może być skonfigurowany do działania jako różni użytkownicy
- (Umiarkowanie) opisowe komunikaty o błędach, a nie tylko kod błędu
Nie mogę jednak uniknąć wrażenia, że jest to zła praktyka - agent SQL powinien być zarezerwowany tylko do zadań związanych z bazą danych i powinienem pozostawić zadania na poziomie systemu operacyjnego uruchomione w Harmonogramie zadań systemu Windows, pomimo mojej niechęci do jego użyteczności.
Czy można w ten sposób polegać na agencie SQL? Jeśli nie, czy powinienem rozważyć harmonogram zadań systemu Windows innej firmy, aby uzyskać niektóre z funkcji, których szukam?