当前位置:   article > 正文

在Linux上创建和运行SQL Server 2017代理作业

linux启动sql server

启用SQL Server代理

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

备注:从 SQL Server 2017 CU4 开始,SQL Server 代理是附带mssql server打包并默认处于禁用状态。


创建示例数据库

/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 创建作业

1. 使用sp_add_job若要创建一个名为作业Daily SampleDB Backup。

  1. -- Adds a new job executed by the SQLServerAgent service
  2. -- called 'Daily SampleDB Backup'
  3. USE msdb ;
  4. GO
  5. EXEC dbo.sp_add_job
  6. @job_name = N'Daily SampleDB Backup' ;
  7. GO

2. 调用sp_add_jobstep若要创建的备份创建的作业步骤SampleDB数据库。

  1. -- Adds a step (operation) to the job
  2. EXEC sp_add_jobstep
  3. @job_name = N'Daily SampleDB Backup',
  4. @step_name = N'Backup database',
  5. @subsystem = N'TSQL',
  6. @command = N'BACKUP DATABASE SampleDB TO DISK = \
  7. N''/var/opt/mssql/data/SampleDB.bak'' WITH NOFORMAT, NOINIT, \
  8. NAME = ''SampleDB-full'', SKIP, NOREWIND, NOUNLOAD, STATS = 10',
  9. @retry_attempts = 5,
  10. @retry_interval = 5 ;
  11. GO

3. 然后创建与作业的每日计划sp_add_schedule。

  1. -- Creates a schedule called 'Daily'
  2. EXEC dbo.sp_add_schedule
  3. @schedule_name = N'Daily SampleDB',
  4. @freq_type = 4,
  5. @freq_interval = 1,
  6. @active_start_time = 233000 ;
  7. USE msdb ;
  8. GO

4. 将作业计划附加到作业sp_attach_schedule。

  1. -- Sets the 'Daily' schedule to the 'Daily SampleDB Backup' Job
  2. EXEC sp_attach_schedule
  3. @job_name = N'Daily SampleDB Backup',
  4. @schedule_name = N'Daily SampleDB';
  5. GO

5. 使用sp_add_jobserver若要将作业分配到目标服务器。 在此示例中,目标是本地服务器。

  1. EXEC dbo.sp_add_jobserver
  2. @job_name = N'Daily SampleDB Backup',
  3. @server_name = N'(LOCAL)';
  4. GO

6. 启动的作业sp_start_job。

  1. EXEC dbo.sp_start_job N' Daily SampleDB Backup' ;
  2. GO

使用 SSMS 创建作业

1. 在 Windows 上启动 SSMS 并连接到 Linux SQL Server 实例。

2. 验证是否已创建一个名为的示例数据库SampleDB。

clip_image002

3. 验证 SQL 代理是否安装并正确配置。 查找在对象资源管理器中的 SQL Server 代理旁边的加号。 如果未启用 SQL Server 代理,请尝试重新启动mssql server Linux 上的服务。

clip_image004

4. 新建作业。

clip_image006

5. 指定作业名称并创建作业步骤。

clip_image008

6. 指定要使用的子系统和应执行的作业步骤。

clip_image010

clip_image012

7. 新建作业计划。

clip_image014

clip_image016

8. 启动作业。

clip_image017

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/114991
推荐阅读
相关标签
  

闽ICP备14008679号