首页 > 数据库技术 > 详细

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

时间:2018-07-23 12:26:50      阅读:338      评论:0      收藏:0      [点我收藏+]
启用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。

-- 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

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

-- 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

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

-- 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

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

-- 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

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

EXEC dbo.sp_add_jobserver

@job_name = N‘Daily SampleDB Backup‘,

@server_name = N‘(LOCAL)‘;

GO

6. 启动的作业sp_start_job。

EXEC dbo.sp_start_job N‘ Daily SampleDB Backup‘ ;

GO

使用 SSMS 创建作业

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

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

技术分享图片

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

技术分享图片

4. 新建作业。

技术分享图片

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

技术分享图片

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

技术分享图片

技术分享图片

7. 新建作业计划。

技术分享图片

技术分享图片

8. 启动作业。

技术分享图片

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

原文:http://blog.51cto.com/ultrasql/2148934

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!