Czy ktoś mógłby mi wyjaśnić, jak tworzyć prace w SQL Server Expressedycji?
Czy ktoś mógłby mi wyjaśnić, jak tworzyć prace w SQL Server Expressedycji?
Odpowiedzi:
SQL Server Express nie zawiera agenta SQL Server , więc nie można po prostu tworzyć zadań SQL Agent.
Co możesz zrobić:
Możesz tworzyć zadania „ręcznie”, tworząc pliki wsadowe i pliki skryptów SQL oraz uruchamiając je za pomocą Harmonogramu zadań systemu Windows.
Na przykład możesz wykonać kopię zapasową bazy danych za pomocą dwóch plików, takich jak ten:
backup.bat:
sqlcmd -i backup.sql
backup.sql:
backup database TeamCity to disk = 'c:\backups\MyBackup.bak'
Po prostu umieść oba pliki w tym samym folderze i uruchom plik wsadowy za pomocą Harmonogramu zadań systemu Windows.
Pierwszy plik to po prostu plik wsadowy systemu Windows, który wywołuje narzędzie sqlcmd i przekazuje plik skryptu SQL.
Plik skryptu SQL zawiera język T-SQL. W moim przykładzie jest to tylko jeden wiersz na kopię zapasową bazy danych, ale można w nim umieścić dowolny T-SQL. Na przykład możesz UPDATEzamiast tego wykonać kilka zapytań.
Jeśli zadania, które chcesz utworzyć, dotyczą kopii zapasowych, konserwacji indeksów lub kontroli integralności, możesz również skorzystać z doskonałego rozwiązania Maintenance firmy Ola Hallengren.
Składa się z wielu procedur składowanych (i zadań agenta SQL dla wersji SQL Server innych niż Express), aw FAQ znajduje się sekcja o tym, jak uruchamiać zadania w SQL Server Express:
Jak rozpocząć korzystanie z rozwiązania do konserwacji programu SQL Server w programie SQL Server Express?
SQL Server Express nie ma agenta SQL Server. Dlatego wykonywanie procedur składowanych należy zaplanować przy użyciu plików cmd i zaplanowanych zadań systemu Windows. Wykonaj poniższe czynności.
SQL Server Express nie ma agenta SQL Server. Dlatego wykonywanie procedur składowanych należy zaplanować przy użyciu plików cmd i zaplanowanych zadań systemu Windows. Wykonaj poniższe czynności.
Pobierz MaintenanceSolution.sql.
Wykonaj MaintenanceSolution.sql. Ten skrypt tworzy potrzebne procedury składowane.
Utwórz pliki cmd, aby wykonać procedury składowane; na przykład:
sqlcmd -E -S. \ SQLEXPRESS -d master -Q "EXECUTE dbo.DatabaseBackup @Database = 'USER_DATABASES', @Directory = N'C: \ Backup ', @BackupType =' FULL '" -b -o C: \ Log \ DatabaseBackup.txtW Zaplanowanych zadaniach systemu Windows utwórz zadania wywołujące pliki cmd.
Zaplanuj zadania.
Rozpocznij zadania i sprawdź, czy zostały pomyślnie zakończone.
Funkcjonalność tworzenia zadań SQL Agent nie jest dostępna w SQL Server Express Edition. Alternatywą jest wykonanie pliku wsadowego, który wykonuje skrypt SQL za pomocą Harmonogramu zadań systemu Windows.
Aby to zrobić, najpierw utwórz plik wsadowy o nazwie sqljob.bat
sqlcmd -S servername -U username -P password -i <path of sqljob.sql>
Wymienić servername, username, passworda pathz naszą.
Następnie utwórz plik skryptu SQL o nazwie sqljob.sql
USE [databasename]
--T-SQL commands go here
GO
Zastąp nazwę [databasename]swojej bazy danych. Elementy USEi GOsą niezbędne podczas pisania skryptu SQL.
sqlcmdto narzędzie wiersza poleceń do wykonywania skryptów SQL. Po utworzeniu tych dwóch plików uruchom plik wsadowy za pomocą Harmonogramu zadań systemu Windows.
Uwaga: już wcześniej opublikowano prawie taką samą odpowiedź na to pytanie. Ale czułem, że jest niekompletny, ponieważ nie zawierał informacji o używaniu danych logowania sqlcmd.
path of sqljob.sqldowolną lokalizacją, której używasz). Pamiętaj, że *.sqlplik tutaj to nic innego jak plik tekstowy.
Wersje programu SQL Server Express są pod pewnymi względami ograniczone - jednym z nich jest brak agenta SQL, który umożliwia planowanie zadań.
Istnieje kilka rozszerzeń innych firm, które zapewniają taką możliwość - sprawdź np: