Könnte mir bitte jemand erklären, wie man Jobs in SQL Server Express
Edition schafft ?
Könnte mir bitte jemand erklären, wie man Jobs in SQL Server Express
Edition schafft ?
Antworten:
SQL Server Express enthält keinen SQL Server-Agenten , daher können nicht nur SQL Agent-Jobs erstellt werden.
Sie können Folgendes tun:
Sie können Jobs "manuell" erstellen, indem Sie Batchdateien und SQL-Skriptdateien erstellen und über den Windows Task Scheduler ausführen.
Sie können Ihre Datenbank beispielsweise mit zwei Dateien wie folgt sichern:
backup.bat:
sqlcmd -i backup.sql
backup.sql:
backup database TeamCity to disk = 'c:\backups\MyBackup.bak'
Legen Sie einfach beide Dateien in denselben Ordner und führen Sie die Batchdatei über den Windows Task Scheduler aus.
Die erste Datei ist nur eine Windows-Batchdatei, die das Dienstprogramm sqlcmd aufruft und eine SQL-Skriptdatei übergibt.
Die SQL-Skriptdatei enthält T-SQL. In meinem Beispiel ist es nur eine Zeile zum Sichern einer Datenbank, aber Sie können jedes T-SQL darin einfügen. Beispielsweise könnten Sie UPDATE
stattdessen einige Abfragen durchführen.
Wenn die Jobs, die Sie erstellen möchten, für Sicherungen, Indexwartungen oder Integritätsprüfungen bestimmt sind, können Sie auch die hervorragende Wartungslösung von Ola Hallengren verwenden.
Es besteht aus einer Reihe gespeicherter Prozeduren (und SQL Agent-Jobs für Nicht-Express-Editionen von SQL Server). In den häufig gestellten Fragen finden Sie einen Abschnitt zum Ausführen der Jobs in SQL Server Express:
Wie fange ich mit der SQL Server-Wartungslösung unter SQL Server Express an?
SQL Server Express hat keinen SQL Server-Agenten. Daher muss die Ausführung der gespeicherten Prozeduren mithilfe von Cmd-Dateien und geplanten Windows-Aufgaben geplant werden. Folge diesen Schritten.
SQL Server Express hat keinen SQL Server-Agenten. Daher muss die Ausführung der gespeicherten Prozeduren mithilfe von Cmd-Dateien und geplanten Windows-Aufgaben geplant werden. Folge diesen Schritten.
Laden Sie MaintenanceSolution.sql herunter.
Führen Sie MaintenanceSolution.sql aus. Dieses Skript erstellt die gespeicherten Prozeduren, die Sie benötigen.
Erstellen Sie Cmd-Dateien, um die gespeicherten Prozeduren auszuführen. Beispiel:
sqlcmd -E -S. \ SQLEXPRESS -d master -Q "EXECUTE dbo.DatabaseBackup @Databases = 'USER_DATABASES', @Directory = N'C: \ Backup ', @BackupType =' FULL '" -b -o C: \ Log \ DatabaseBackup.txtErstellen Sie unter Geplante Windows-Aufgaben Aufgaben zum Aufrufen der Cmd-Dateien.
Planen Sie die Aufgaben.
Starten Sie die Aufgaben und überprüfen Sie, ob sie erfolgreich abgeschlossen wurden.
Die Funktionalität zum Erstellen von SQL Agent-Jobs ist in SQL Server Express Edition nicht verfügbar. Eine Alternative besteht darin, eine Batchdatei auszuführen, die ein SQL-Skript mit Windows Task Scheduler ausführt.
Erstellen Sie dazu zunächst eine Batch-Datei mit dem Namen sqljob.bat
sqlcmd -S servername -U username -P password -i <path of sqljob.sql>
Ersetzen Sie die servername
, username
, password
und path
mit Ihnen.
Erstellen Sie dann die SQL- Skriptdatei mit dem Namen sqljob.sql
USE [databasename]
--T-SQL commands go here
GO
Ersetzen Sie das [databasename]
durch Ihren Datenbanknamen. Das USE
und GO
ist erforderlich, wenn Sie das SQL-Skript schreiben.
sqlcmd
ist ein Befehlszeilenprogramm zum Ausführen von SQL-Skripten. Führen Sie nach dem Erstellen dieser beiden Dateien die Batchdatei mit dem Windows Task Scheduler aus.
NB: Für diese Frage wurde bereits eine fast gleiche Antwort veröffentlicht. Ich fand es jedoch unvollständig, da es keine Angaben zu den Anmeldeinformationen mit machte sqlcmd
.
path of sqljob.sql
Sie im obigen Skript durch den von Ihnen verwendeten Speicherort.) Denken Sie daran, dass eine *.sql
Datei hier nichts anderes als eine Textdatei ist.
SQL Server Express-Editionen sind in gewisser Weise eingeschränkt. Eine Möglichkeit besteht darin, dass sie nicht über den SQL-Agenten verfügen, mit dem Sie Jobs planen können.
Es gibt einige Erweiterungen von Drittanbietern, die diese Funktion bieten - siehe z.