![Могу ли я добавить план обслуживания в SQL Server для Linux?](https://rvso.com/image/1597856/%D0%9C%D0%BE%D0%B3%D1%83%20%D0%BB%D0%B8%20%D1%8F%20%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C%20%D0%BF%D0%BB%D0%B0%D0%BD%20%D0%BE%D0%B1%D1%81%D0%BB%D1%83%D0%B6%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%20%D0%B2%20SQL%20Server%20%D0%B4%D0%BB%D1%8F%20Linux%3F.png)
Я использую SQL Server 2017 для Linux, и в меню «Управление» отсутствуют планы обслуживания.
Кто-нибудь знает, доступны ли планы обслуживания для SQL Server для Linux? Я не могу найти ничего, связанного с этой темой.
решение1
Как вы можете прочитать в документации Microsoft SQL Server (здесьв разделе «Известные проблемы») планы обслуживания не поддерживаются в SQL Server Management Studio для SQL Server на Linux.
Однако вы можете создавать собственные задания SQL Server для выполнения резервного копирования, обслуживания индексов и статистики, как показано ниже.
Создать работу
CREATE DATABASE SampleDB ;
USE msdb ;
GO
EXEC dbo.sp_add_job
@job_name = N’Daily SampleDB Backup’ ;
GO
Добавьте один или несколько этапов работы
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
Составьте график работы
EXEC dbo.sp_add_schedule
@schedule_name = N’Daily SampleDB’,
@freq_type = 4,
@freq_interval = 1,
@active_start_time = 233000 ;
USE msdb ;
GO
Прикрепите расписание и добавьте сервер заданий
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
Для получения более подробной информации, пожалуйста, прочтитеэтотобъявление.