MS SQL Server Agenten per Kommandozeile stoppen?
Hallo zusammen.
Ich habe eine Anfrage zum SQL Server Agenten. (MS SQL Server 2000).
Die tägliche Datensicherung auf dem Windows Server, auf dem auch der SQL-Server läuft, erledigt seit vielen Monaten ein mittlerweile ziemlich umfangreicher Batch-Job. Unter anderem stoppt der Job den SQL-Server-Dienst und kopiert die Datenbanken per xcopy auf eine andere Platte. Danach startet das Script den SQL Server wieder. Stop und Start geschehen per net stop mssqlserver und net start mssqlserver. Soweit lief immer alles ganz prima.
Jetzt ist das Bedürfnis entstanden, die Datenbanken in feineren Abständen zu sichern. Dazu habe ich zusätzlich zum täglichen Betriebssystem-Batch-Job im SQL-Server den SQL Server Agenten eingeschaltet, und lasse ihn stündlich ein differenzielles Backup ziehen. Das klappt auch ganz prima.
Das Problem besteht in der Zusammenarbeit der beiden Sicherungen. Seit der SQL Server Agent läuft, kann der Batch-Job den SQL Server nicht mehr stoppen. Der Batch-Job bleibt einfach beim Statement net stop mssqlserver stehen.
Kennt jemand eine Lösung?
Evtl. kann man ja auch den Agenten von außen per Kommandozeile stoppen.
Schon im Voraus besten Dank für Eure Tipps.
Ich habe eine Anfrage zum SQL Server Agenten. (MS SQL Server 2000).
Die tägliche Datensicherung auf dem Windows Server, auf dem auch der SQL-Server läuft, erledigt seit vielen Monaten ein mittlerweile ziemlich umfangreicher Batch-Job. Unter anderem stoppt der Job den SQL-Server-Dienst und kopiert die Datenbanken per xcopy auf eine andere Platte. Danach startet das Script den SQL Server wieder. Stop und Start geschehen per net stop mssqlserver und net start mssqlserver. Soweit lief immer alles ganz prima.
Jetzt ist das Bedürfnis entstanden, die Datenbanken in feineren Abständen zu sichern. Dazu habe ich zusätzlich zum täglichen Betriebssystem-Batch-Job im SQL-Server den SQL Server Agenten eingeschaltet, und lasse ihn stündlich ein differenzielles Backup ziehen. Das klappt auch ganz prima.
Das Problem besteht in der Zusammenarbeit der beiden Sicherungen. Seit der SQL Server Agent läuft, kann der Batch-Job den SQL Server nicht mehr stoppen. Der Batch-Job bleibt einfach beim Statement net stop mssqlserver stehen.
Kennt jemand eine Lösung?
Evtl. kann man ja auch den Agenten von außen per Kommandozeile stoppen.
Schon im Voraus besten Dank für Eure Tipps.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 21398
Url: https://administrator.de/contentid/21398
Ausgedruckt am: 25.11.2024 um 19:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo Fred-HB,
Du machst Dir das aber ziemlich schwer.
Zunächst zu Deiner direkten Frage: der Agent ist auch nur ein Dienst mit Namen SQLSERVERAGENT und läßt sich somit genauso mit net start/stop starten oder beenden.
Aber das differenzielle Backup ist nur sinnvoll, wenn ganz am Anfang und auch ab und an mal zwischendrin ein komplettes Backup gemacht wird. Komplettes Backup heißt aber nicht, Dienste beenden und Dateien sichern, sondern eine Sicherung vom SQL Server aus, denn nur dann kennt der SQL Server die Grundlage für das differenzielle Backup. Wegen der Komplettsicherung brauchst Du also nicht den SQL Server herunterzufahren.
Du solltest Dir mal unter Verwaltung die Wartungspläne zu Gemüte führen und hier eine Kombination von Vollsicherung und Transaktionsprotokollsicherung einstellen. Das geht recht einfach und dürfte bei täglicher Vollsicherung und stündlicher TP-Sicherung genau Eure Anforderungen treffen. Achte aber darauf, daß bei den Datenbankeigenschaften unter Optionen das Wiederherstellungsmodell 'Vollständig' gewählt ist.
Gruß, Mad Max
Du machst Dir das aber ziemlich schwer.
Zunächst zu Deiner direkten Frage: der Agent ist auch nur ein Dienst mit Namen SQLSERVERAGENT und läßt sich somit genauso mit net start/stop starten oder beenden.
Aber das differenzielle Backup ist nur sinnvoll, wenn ganz am Anfang und auch ab und an mal zwischendrin ein komplettes Backup gemacht wird. Komplettes Backup heißt aber nicht, Dienste beenden und Dateien sichern, sondern eine Sicherung vom SQL Server aus, denn nur dann kennt der SQL Server die Grundlage für das differenzielle Backup. Wegen der Komplettsicherung brauchst Du also nicht den SQL Server herunterzufahren.
Du solltest Dir mal unter Verwaltung die Wartungspläne zu Gemüte führen und hier eine Kombination von Vollsicherung und Transaktionsprotokollsicherung einstellen. Das geht recht einfach und dürfte bei täglicher Vollsicherung und stündlicher TP-Sicherung genau Eure Anforderungen treffen. Achte aber darauf, daß bei den Datenbankeigenschaften unter Optionen das Wiederherstellungsmodell 'Vollständig' gewählt ist.
Gruß, Mad Max
Hallo Fred-HB,
grundsätzlich ist der Aufwand bei der Wiederherstellung mit differenziellen Backups günstiger als mit TP-Protokollen, geht aber zu Lasten der Sicherung, weil ja erst mal die Differenz festgestellt werden muß und dadurch die DB stärker belastet als eine TP-Sicherung. Wie groß diese Unterschiede sind, hängt von Eurem Server, DB-Größe und DB-Nutzung ab. Da ich diese Daten nicht kenne, kann ich schlecht Tips geben (und will ich eigentlich auch nicht, in Sicherungskonzepte kann man eine Menge Zeit investieren).
Dein Beitrag ganz oben hat mich nur befürchten lassen (aufgrund der von Dir schon festgestellten fehlenden Informationen), daß Du nicht viel Ahnung von Sicherungen hast und auf einmal ohne DB dastehst, das wollte ich doch nicht
Gruß, Mad Max
grundsätzlich ist der Aufwand bei der Wiederherstellung mit differenziellen Backups günstiger als mit TP-Protokollen, geht aber zu Lasten der Sicherung, weil ja erst mal die Differenz festgestellt werden muß und dadurch die DB stärker belastet als eine TP-Sicherung. Wie groß diese Unterschiede sind, hängt von Eurem Server, DB-Größe und DB-Nutzung ab. Da ich diese Daten nicht kenne, kann ich schlecht Tips geben (und will ich eigentlich auch nicht, in Sicherungskonzepte kann man eine Menge Zeit investieren).
Dein Beitrag ganz oben hat mich nur befürchten lassen (aufgrund der von Dir schon festgestellten fehlenden Informationen), daß Du nicht viel Ahnung von Sicherungen hast und auf einmal ohne DB dastehst, das wollte ich doch nicht
Gruß, Mad Max