Agent sql server linux

Create and run SQL Server Agent jobs on Linux

SQL Server jobs are used to regularly perform the same sequence of commands in your SQL Server database. This tutorial provides an example of how to create a SQL Server Agent job on Linux using both Transact-SQL and SQL Server Management Studio (SSMS).

  • Install SQL Server Agent on Linux
  • Create a new job to perform daily database backups
  • Schedule and run the job
  • Perform the same steps in SSMS (optional)

For known issues with SQL Server Agent on Linux, see the Release Notes.

Prerequisites

The following prerequisites are required to complete this tutorial:

The following prerequisites are optional:

Enable SQL Server Agent

To use SQL Server Agent on Linux, you must first enable SQL Server Agent on a machine that already has SQL Server installed.

sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true 
sudo systemctl restart mssql-server 

Starting with SQL Server 2017 CU4, SQL Server Agent is included with the mssql-server package and is disabled by default. For Agent set up prior to CU4 visit, Install SQL Server Agent on Linux.

Create a sample database

Use the following steps to create a sample database named SampleDB. This database is used for the daily backup job.

  1. On your Linux machine, open a bash terminal session.
  2. Use sqlcmd to run a Transact-SQL CREATE DATABASE command.
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -Q 'CREATE DATABASE SampleDB' 
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -Q 'SELECT Name FROM sys.Databases' 

Create a job with Transact-SQL

The following steps create a SQL Server Agent job on Linux with Transact-SQL commands. The job runs a daily backup of the sample database, SampleDB.

You can use any T-SQL client to run these commands. For example, on Linux you can use sqlcmd or Visual Studio Code. From a remote Windows Server, you can also run queries in SQL Server Management Studio (SSMS) or use the UI interface for job management, which is described in the next section.

-- Adds a new job executed by the SQLServerAgent service -- called 'Daily SampleDB Backup' USE msdb ; GO EXEC dbo.sp_add_job @job_name = N'Daily SampleDB Backup' ; GO 
-- Adds a step (operation) to the job EXEC sp_add_jobstep @job_name = N'Daily SampleDB Backup', @step_name = N'Backup database', @subsystem = N'TSQL', @command = N'BACKUP DATABASE SampleDB TO DISK = \ N''/var/opt/mssql/data/SampleDB.bak'' WITH NOFORMAT, NOINIT, \ NAME = ''SampleDB-full'', SKIP, NOREWIND, NOUNLOAD, STATS = 10', @retry_attempts = 5, @retry_interval = 5 ; GO 
-- Creates a schedule called 'Daily' EXEC dbo.sp_add_schedule @schedule_name = N'Daily SampleDB', @freq_type = 4, @freq_interval = 1, @active_start_time = 233000 ; USE msdb ; GO 
-- Sets the 'Daily' schedule to the 'Daily SampleDB Backup' Job EXEC sp_attach_schedule @job_name = N'Daily SampleDB Backup', @schedule_name = N'Daily SampleDB'; GO 
EXEC dbo.sp_add_jobserver @job_name = N'Daily SampleDB Backup', @server_name = N'(LOCAL)'; GO 
EXEC dbo.sp_start_job N' Daily SampleDB Backup' ; GO 

Create a job with SSMS

You can also create and manage jobs remotely using SQL Server Management Studio (SSMS) on Windows.

  1. Start SSMS on Windows and connect to your Linux SQL Server instance. For more information, see Manage SQL Server on Linux with SSMS.
  2. Verify that you have created a sample database named SampleDB. Create a SampleDB database
  3. Verify that SQL Agent was installed and configured correctly. Look for the plus sign next to SQL Server Agent in the Object Explorer. If SQL Server Agent is not enabled, try restarting the mssql-server service on Linux. Verify SQL Server Agent was installed
  4. Create a new job. Create a new job
  5. Give your job a name and create your job step. Create a job step
  6. Specify what subsystem you want to use and what the job step should do. Job subsystemJob step action
  7. Create a new job schedule. Screenshot of the New Job dialog box with the Schedules option highlighted and the New option called out.Screenshot of the New Job dialog box with the OK option called out.
  8. Start your job. Start the SQL Server Agent job

Next Steps

In this tutorial, you learned how to:

  • Install SQL Server Agent on Linux
  • Use Transact-SQL and system stored procedures to create jobs
  • Create a job that performs daily database backups
  • Use SSMS UI to create and manage jobs

Next, explore other capabilities for creating and managing jobs:

Источник

Установка агента SQL Server в Linux

В этой статье описывается включение или установка агента SQL Server в Linux.

Агент SQL Server выполняет запланированные задания SQL Server. Начиная с версии SQL Server 2017 с накопительным пакетом обновления 4, агент SQL Server включается в пакет mssql-server и по умолчанию отключен. Сведения о функциях, поддерживаемых в этом выпуске агента SQL Server, а также сведения о версии см. в заметках о выпуске.

Instructions

Прежде чем использовать агент SQL Server в Linux, выполните следующие действия, чтобы включить или установить его.

    Добавьте имя узла (с доменом или без него) в файлы /etc/hosts . Ниже приведен пример формата таких записей:

"IP Address" "hostname" "IP Address" "hostname.domain.com" 

Включение агента SQL Server

Для SQL Server 2019 и SQL Server 2017 CU4 и более поздних версий необходимо только включить агент SQL Server. Вам не нужно устанавливать отдельный пакет.

Чтобы включить агент SQL Server, выполните указанные ниже действия.

sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true sudo systemctl restart mssql-server 

Если вы производите обновление с версии 2017 с накопительным пакетом обновления 3 или более ранней с установленным агентом, агент SQL Server включается автоматически, а предыдущие версии пакета агента удаляются.

Обозреватель объектов SQL Server Management Studio не отображает содержимое узла агента SQL Server, если не включены расширенные хранимые процедуры агента (Agent XPs), вне зависимости от состояния службы агента. Дополнительные сведения: Параметр конфигурации сервера «Agent XPs».

Установка агента SQL Server

Для SQL Server 2017 CU3 и более ранних версий необходимо установить пакет агента SQL Server.

Приведенные ниже инструкции относятся к версии SQL Server 2017 с накопительным пакетом обновления 3 и более ранним. Перед установкой агента SQL Server сначала установите SQL Server. Это позволит настроить ключи и репозитории, которые следует использовать при установке пакета mssql-server-agent.

Установите агент SQL Server для своей платформы:

Установка в RHEL

Чтобы установить mssql-server-agent в Red Hat Enterprise Linux, выполните указанные ниже действия.

sudo yum install mssql-server-agent sudo systemctl restart mssql-server 

Если пакет mssql-server-agent уже установлен, можно обновить его до последней версии, выполнив следующие команды:

sudo yum check-update sudo yum update mssql-server-agent sudo systemctl restart mssql-server 

Если вам нужна автономная установка, найдите скачиваемый пакет агента SQL Server в разделе Заметки о выпуске. Затем выполните действия по автономной установке, описанные в статье Установка SQL Server.

Установка в Ubuntu

Чтобы установить mssql-server-agent в Ubuntu, выполните указанные ниже действия.

sudo apt-get update sudo apt-get install mssql-server-agent sudo systemctl restart mssql-server 

Если пакет mssql-server-agent уже установлен, можно обновить его до последней версии, выполнив следующие команды:

sudo apt-get update sudo apt-get install mssql-server-agent sudo systemctl restart mssql-server 

Если вам нужна автономная установка, найдите скачиваемый пакет агента SQL Server в разделе Заметки о выпуске. Затем выполните действия по автономной установке, описанные в статье Установка SQL Server.

Установка в SLES

Чтобы установить mssql-server-agent в SUSE Linux Enterprise Server, выполните указанные ниже действия.

Установка mssql-server-agent

sudo zypper install mssql-server-agent sudo systemctl restart mssql-server 

Если пакет mssql-server-agent уже установлен, можно обновить его до последней версии, выполнив следующие команды:

sudo zypper refresh sudo zypper update mssql-server-agent sudo systemctl restart mssql-server 

Если вам нужна автономная установка, найдите скачиваемый пакет агента SQL Server в разделе Заметки о выпуске. Затем выполните действия по автономной установке, описанные в статье Установка SQL Server.

Дальнейшие действия

Дополнительные сведения об использовании агента SQL Server для создания, планирования и выполнения заданий см. в статье Создание и запуск задания агента SQL Server в Linux.

Источник

Создание и запуск заданий агента SQL Server в Linux

Задания SQL Server используются для регулярного выполнения одинаковой последовательности команд в базе данных SQL Server. В этом учебнике представлен пример создания задания агента SQL Server в Linux с помощью Transact-SQL и SQL Server Management Studio (SSMS).

  • Установка агента SQL Server в Linux
  • Создание задания для выполнения ежедневного резервного копирования базы данных
  • Планирование и запуск задания
  • Выполнение тех же действий в SSMS (необязательно)

Известные проблемы с агентом SQL Server в Linux см. в заметках о выпуске.

предварительные требования

Для работы с этим руководством необходимо выполнить следующие условия.

  • Компьютер Linux со следующими необходимыми компонентами:
    • SQL Server (RHEL, SLES или Ubuntu) с программами командной строки.

    Следующие компоненты являются необязательными.

    Включение агента SQL Server

    Чтобы использовать агент SQL Server в Linux, нужно сначала включить его на компьютере, где уже установлен SQL Server.

    sudo /opt/mssql/bin/mssql-conf set sqlagent.enabled true 
    sudo systemctl restart mssql-server 

    Начиная с версии SQL Server 2017 с накопительным пакетом обновления 4, агент SQL Server включается в пакет mssql-server и по умолчанию отключен. Сведения о настройке агента в версиях, предшествующих накопительному пакету обновления 4, см. в статье Установка агента SQL Server в Linux.

    Создание образца базы данных

    Чтобы создать образец базы данных с именем SampleDB, выполните указанные ниже действия. Эта база данных используется для задания ежедневного резервного копирования.

    1. На компьютере Linux откройте сеанс терминала bash.
    2. Используйте sqlcmd для выполнения команды CREATE DATABASE Transact-SQL.
    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -Q 'CREATE DATABASE SampleDB' 
    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -Q 'SELECT Name FROM sys.Databases' 

    Создание задания с помощью Transact-SQL

    Приведенные ниже шаги позволяют создать задание агента SQL Server в Linux с помощью команд Transact-SQL. Это задание выполняет ежедневное резервное копирование образца базы данных SampleDB.

    Для выполнения этих команд можно использовать любой клиент T-SQL. Например, в Linux можно использовать sqlcmd или Visual Studio Code. С удаленного сервера Windows Server вы также можете выполнять запросы в SQL Server Management Studio (SSMS) или использовать пользовательский интерфейс для управления заданиями, как описано в следующем разделе.

    -- Adds a new job executed by the SQLServerAgent service -- called 'Daily SampleDB Backup' USE msdb ; GO EXEC dbo.sp_add_job @job_name = N'Daily SampleDB Backup' ; GO 
    -- Adds a step (operation) to the job EXEC sp_add_jobstep @job_name = N'Daily SampleDB Backup', @step_name = N'Backup database', @subsystem = N'TSQL', @command = N'BACKUP DATABASE SampleDB TO DISK = \ N''/var/opt/mssql/data/SampleDB.bak'' WITH NOFORMAT, NOINIT, \ NAME = ''SampleDB-full'', SKIP, NOREWIND, NOUNLOAD, STATS = 10', @retry_attempts = 5, @retry_interval = 5 ; GO 
    -- Creates a schedule called 'Daily' EXEC dbo.sp_add_schedule @schedule_name = N'Daily SampleDB', @freq_type = 4, @freq_interval = 1, @active_start_time = 233000 ; USE msdb ; GO 
    -- Sets the 'Daily' schedule to the 'Daily SampleDB Backup' Job EXEC sp_attach_schedule @job_name = N'Daily SampleDB Backup', @schedule_name = N'Daily SampleDB'; GO 
    EXEC dbo.sp_add_jobserver @job_name = N'Daily SampleDB Backup', @server_name = N'(LOCAL)'; GO 
    EXEC dbo.sp_start_job N' Daily SampleDB Backup' ; GO 

    Создание задания с использованием SSMS

    Кроме того, с помощью SQL Server Management Studio (SSMS) в Windows можно удаленно создавать задания и управлять ими.

    1. Запустите SSMS в Windows и подключитесь к своему экземпляру SQL Server в Linux. Дополнительные сведения см. в статье Управление SQL Server в Linux с помощью SSMS.
    2. Убедитесь, чтобы создан образец базы данных с именем SampleDB. Создание образца базы данных SampleDB
    3. Убедитесь, что агент SQL установлен и настроен правильно. Найдите знак «плюс» рядом с агентом SQL Server в обозревателе объектов. Если агент SQL Server не включен, попробуйте перезапустить службу mssql-server в Linux. Проверка установки агента SQL Server
    4. Создайте задание. Создание задания
    5. Присвойте заданию имя и создайте шаг задания. Создание шага задания
    6. Укажите подсистему, которую вы хотите использовать, и действие, которое должен выполнить шаг задания. Подсистема заданийДействие шага задания
    7. Создайте расписание задания. Снимок экрана: диалоговое окно Снимок экрана: диалоговое окно
    8. Запустите ваше задание. Запуск задания агента SQL Server

    Next Steps

    В этом руководстве вы узнали, как выполнять следующие задачи:

    • Установка агента SQL Server в Linux
    • Использование Transact-SQL и системных хранимых процедур для создания заданий
    • Создание задания, выполняющего ежедневное резервное копирование базы данных
    • Использование пользовательского интерфейса SSMS для создания заданий и управления ими

    Далее вы можете изучить другие возможности для создания заданий и управления ими.

    Источник

    Читайте также:  Ipsec vpn туннель linux
Оцените статью
Adblock
detector