Может ли кто-нибудь объяснить мне, как я могу создавать рабочие места в выпуске SQL Server Express
?
Как создавать задания в выпуске SQL Server Express
Ответ 1
SQL Server Express не включает в себя агент SQL Server, поэтому невозможно просто создавать задания агента SQL.
Что вы можете сделать, это:
Вы можете создавать задания "вручную", создавая пакетные файлы и файлы сценариев SQL и запуская их через планировщик заданий Windows.
Например, вы можете сделать резервную копию вашей базы данных с помощью двух файлов:
backup.bat:
sqlcmd -i backup.sql
backup.sql:
backup database TeamCity to disk = 'c:\backups\MyBackup.bak'
Просто поместите оба файла в одну папку и запустите пакетный файл с помощью планировщика заданий Windows.
Первый файл - это просто пакетный файл Windows, который вызывает утилиту sqlcmd и передает файл сценария SQL.
Файл сценария SQL содержит T-SQL. В моем примере это всего одна строка для резервного копирования базы данных, но вы можете поместить любой T-SQL внутрь. Например, вместо этого вы можете выполнить несколько запросов UPDATE
.
Если вы хотите создать задания для резервного копирования, обслуживания индекса или проверки целостности, вы также можете использовать отличное решение для технического обслуживания от Ola Hallengren.
Он состоит из набора хранимых процедур (и заданий агента SQL для выпусков SQL Server не -E xpress), а в разделе часто задаваемых вопросов есть раздел о том, как запускать задания в SQL Server Express:
Как начать работу с решением обслуживания SQL Server в SQL Server Express?
SQL Server Express не имеет агента SQL Server. Поэтому выполнение хранимых процедур должно планироваться с использованием файлов cmd и запланированных задач Windows. Следуй этим шагам.
SQL Server Express не имеет агента SQL Server. Поэтому выполнение хранимых процедур должно планироваться с использованием файлов cmd и запланированных задач Windows. Следуй этим шагам.
Загрузите файл MaintenanceSolution.sql.
Выполните MaintenanceSolution.sql. Этот скрипт создает хранимые процедуры, которые вам нужны.
Создать cmd файлы для выполнения хранимых процедур; например:
sqlcmd -E -S.\SQLEXPRESS -d master -Q "ВЫПОЛНИТЬ dbo.DatabaseBackup @Databases = 'USER_DATABASES', @Directory = N'C:\Backup ', @BackupType =' FULL '" -b - o C:\Log\DatabaseBackup.txtВ Windows Scheduled Tasks создайте задачи для вызова файлов cmd.
Расписание задач.
Запустите задачи и убедитесь, что они успешно завершены.
Ответ 2
Функциональность создания SQL Agent Jobs недоступна в SQL Server Express Edition. Альтернативой является выполнение командного файла, который выполняет SQL script с помощью планировщика задач Windows.
Для этого сначала создайте командный файл с именем sqljob.bat
sqlcmd -S servername -U username -P password -i path of sqljob.sql
Замените тэги servername
, username
, password
и path
.
Затем создайте файл SQL script с именем sqljob.sql
USE [databasename]
--T-SQL commands go here
GO
Замените [databasename]
на ваше имя базы данных. USE
и GO
необходимы, когда вы пишете SQL script.
sqlcmd
- это утилита командной строки для выполнения SQL-скриптов. После создания этих двух файлов выполняется пакетный файл с помощью диспетчера задач Windows.
NB: Почти такой же ответ был отправлен для этого вопроса раньше. Но я чувствовал, что он неполный, поскольку он не указал информацию о входе в систему, используя sqlcmd
.
Ответ 3
Редакции SQL Server Express в некоторых отношениях ограничены - во-первых, у них нет агента SQL, который позволяет планировать задания.
Существует несколько сторонних расширений, которые предоставляют такую возможность - проверьте, например:
- Express Agent для SQL Server Express: задания, задания, задания и почта (последнее обновление с 2005 года, оно больше не поддерживается).
- Планировщик SQL