Da ich ein DBA bin (und in vielen Fällen der De-facto-Sysadmin), wird SQL Server auf so ziemlich jedem Server installiert, mit dem ich regelmäßig arbeiten muss. Vor kurzem habe ich festgestellt, dass ich den SQL-Agenten in fast allen Fällen als Jobplaner und nicht als systemeigenen Windows-Taskplaner verwendet habe.
Aus meiner Sicht bietet der SQL-Agent eine Reihe von Vorteilen gegenüber dem systemeigenen Windows-Taskplaner:
- Remote (von meiner Workstation aus) Start / Stopp / Überwachung von Aufgaben
- Freigegebene Zeitpläne (anstatt jede Aufgabe für sich)
- Mehrere Schritte und Kontrollfluss
- Verschiedene Arten von Aufgaben
- Warnungen bei Ausfall / Abschluss
- Kann so konfiguriert werden, dass sie als unterschiedliche Benutzer fungiert
- (Mäßig) beschreibende Fehlermeldungen und nicht nur ein Fehlercode
Ich kann mich jedoch dem Gefühl nicht entziehen, dass dies eine schlechte Praxis ist - der SQL-Agent sollte nur für datenbankbezogene Aufgaben reserviert sein, und ich sollte Aufgaben auf Betriebssystemebene im Windows-Taskplaner ausführen, obwohl ich dessen Verwendbarkeit ablehne.
Ist es in Ordnung, sich auf diese Weise auf den SQL-Agenten zu verlassen? Wenn nicht, sollte ich einen Windows-Taskplaner eines Drittanbieters in Betracht ziehen, um einige der Funktionen zu erhalten, nach denen ich suche?