Microsoft SQL Server
Geplante Aufgabe oder Auftrag
Suche…
Einführung
Der SQL Server-Agent verwendet SQL Server zum Speichern von Auftragsinformationen. Jobs enthalten einen oder mehrere Jobschritte. Jeder Schritt enthält eine eigene Aufgabe, dh das Sichern einer Datenbank. Der SQL Server-Agent kann einen Job nach einem Zeitplan, als Reaktion auf ein bestimmtes Ereignis oder auf Anforderung ausführen.
Erstellen Sie einen geplanten Job
Einen Job erstellen
Um zuerst einen Job hinzuzufügen, müssen Sie eine gespeicherte Prozedur namens sp_add_job verwenden
USE msdb ; GO EXEC dbo.sp_add_job @job_name = N'Weekly Job' ; -- the job name
Dann müssen wir mit einer gespeicherten Prozedur namens sp_add_jobStep einen Jobschritt hinzufügen
EXEC sp_add_jobstep @job_name = N'Weekly Job', -- Job name to add a step @step_name = N'Set database to read only', -- step name @subsystem = N'TSQL', -- Step type @command = N'ALTER DATABASE SALES SET READ_ONLY', -- Command @retry_attempts = 5, --Number of attempts @retry_interval = 5 ; -- in minutes
Richten Sie den Job auf einen Server aus
EXEC dbo.sp_add_jobserver @job_name = N'Weekly Sales Data Backup', @server_name = 'MyPC\data; -- Default is LOCAL GO
Erstellen Sie einen Zeitplan mit SQL
Um einen Zeitplan zu erstellen, müssen wir eine gespeicherte Systemprozedur mit dem Namen sp_add_schedule verwenden
USE msdb
GO
EXEC sp_add_schedule
@schedule_name = N'NightlyJobs' , -- specify the schedule name
@freq_type = 4, -- A value indicating when a job is to be executed (4) means Daily
@freq_interval = 1, -- The days that a job is executed and depends on the value of `freq_type`.
@active_start_time = 010000 ; -- The time on which execution of a job can begin
GO
Es gibt weitere Parameter, die mit sp_add_schedule
können. Weitere sp_add_schedule
Sie in dem oben angegebenen Link.
Zeitplan an einen Job anhängen
Um einen Zeitplan an einen SQL-Agent-Auftrag anzuhängen, müssen Sie eine gespeicherte Prozedur namens sp_attach_schedule verwenden
-- attaches the schedule to the job BackupDatabase
EXEC sp_attach_schedule
@job_name = N'BackupDatabase', -- The job name to attach with
@schedule_name = N'NightlyJobs' ; -- The schedule name
GO
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow