SQLServer使用SQLServer代理作业
sqlserver cmdexec 作业步骤

sqlserver cmdexec 作业步骤在SQL Server中,cmdexec作业步骤用于在作业中执行命令提示符的命令或批处理脚本。
这种类型的作业步骤可以在SQL Server代理中配置,以满足特定的需求或自动化任务。
作业步骤概述:SQL Server代理是一个用于自动化管理和执行任务的强大工具。
而cmdexec作业步骤是SQL Server代理中的一种特殊类型,允许用户执行命令提示符的命令或批处理脚本。
通过使用cmdexec作业步骤,可以在任务完成之前执行各种类型的命令,并将结果反馈给SQL Server代理。
配置cmdexec作业步骤:要配置cmdexec作业步骤,请按照以下步骤进行操作:1. 打开SQL Server管理工作室,并连接到目标SQL Server实例。
2. 展开“SQL Server代理”节点,并选择“作业”文件夹。
3. 右键单击“作业”文件夹,选择“新建作业”选项。
4. 在“常规”选项卡中,输入作业的名称和描述。
5. 切换到“步骤”选项卡,然后点击“新建”按钮。
6. 在“新建作业步骤”对话框中,选择“类型”为“操作系统(cmdexec)”。
7. 在“命令”文本框中,输入要执行的命令或批处理脚本的路径。
8. 可以选择是否在指定的目录中执行命令,或者在默认目录中执行。
9. 配置其他相关参数,如使用代理账户、重试次数等。
10. 完成后,点击“确定”保存设置。
示例:下面是一个简单的示例,展示如何使用cmdexec作业步骤执行一个批处理脚本。
1. 打开SQL Server管理工作室,并连接到目标SQL Server实例。
2. 展开“SQL Server代理”节点,并选择“作业”文件夹。
3. 右键单击“作业”文件夹,选择“新建作业”选项。
4. 在“常规”选项卡中,输入作业的名称和描述,比如“执行批处理脚本”。
5. 切换到“步骤”选项卡,点击“新建”按钮。
6. 在“新建作业步骤”对话框中,选择“类型”为“操作系统(cmdexec)”。
sqlserver新建作业步骤

sqlserver新建作业步骤第一步:打开SQL Server管理器在开始菜单中找到SQL Server管理器的图标,点击打开。
如果没有找到该图标,可以在搜索栏中输入“SQL Server管理器”进行搜索。
第二步:连接到SQL Server实例在SQL Server管理器中,展开“SQL Server代理”,然后右键单击“作业”文件夹,选择“新建作业”。
接下来会弹出一个新建作业的对话框。
第三步:填写作业名称和描述在新建作业的对话框中,首先需要填写作业的名称和描述。
作业名称应该能够清晰地反映该作业的用途,方便后续的管理和查询。
第四步:添加作业步骤在新建作业的对话框中,点击左侧的“步骤”选项卡,然后点击“新建”按钮。
接下来会弹出一个新建作业步骤的对话框。
第五步:填写作业步骤名称和类型在新建作业步骤的对话框中,首先需要填写作业步骤的名称和类型。
作业步骤名称应该能够清晰地反映该步骤的功能,方便后续的管理和查询。
作业步骤类型可以根据具体需求选择,比如可以选择“Transact-SQL脚本(SQL Server数据库引擎)”类型来执行一段SQL语句。
第六步:配置作业步骤在新建作业步骤的对话框中,根据具体需求配置该步骤的相关参数。
例如,如果选择了“Transact-SQL脚本(SQL Server数据库引擎)”类型,就可以在“命令”文本框中输入要执行的SQL语句。
第七步:配置作业调度在新建作业的对话框中,点击左侧的“调度”选项卡,然后点击“新建”按钮。
接下来会弹出一个新建作业调度的对话框。
第八步:配置作业调度计划在新建作业调度的对话框中,根据具体需求配置该调度的相关参数。
例如,可以设置作业的执行频率、执行时间等。
可以通过点击“高级”按钮进一步配置作业的调度选项,比如可以设置作业的重试次数、失败处理方式等。
第九步:保存作业在新建作业的对话框中,点击“确定”按钮保存作业。
此时,新建的作业就会出现在SQL Server管理器中的“作业”文件夹下。
SQLserver使用作业定时执行脚本

SQLserver使⽤作业定时执⾏脚本具体步骤:企业管理器--管理--SQL Server代理--右键作业--新建作业--"常规"项中输⼊作业名称--"步骤"项--新建--"步骤名"中输⼊步骤名--"类型"中选择"Transact-SQL 脚本(TSQL)"--"数据库"选择执⾏命令的数据库--"命令"中输⼊要执⾏的语句:下⾯是备份数据库,并且删除15天以前备份的版本DECLARE @strPath NVARCHAR(200)DECLARE @strPathDel NVARCHAR(200)set @strPath =convert(NVARCHAR(19),getdate(),112)set @strPathDel =convert(NVARCHAR(19),getdate()-15,112)set @strPath ='D:\备份\服务器⾃动备份\'+'JSOA2010'+@strPath +'.bak'set @strPathDel ='del '+'D:\备份\服务器⾃动备份\'+'JSOA2010'+@strPathDel +'.bak'BACKUP DATABASE [JSOA2010] TO DISK= @strPath WITH NOINIT , NOUNLOAD , NOSKIP , STATS = 10, NOFORMATexec master..xp_cmdshell @strPathDel--确定--"计划"项--新建计划--"名称"中输⼊计划名称--"计划类型"中选择你的作业执⾏安排--定为每天计划⼀次,时间为18:40即可--如果选择"反复出现"--点"更改"来设置你的时间安排然后将SQL Agent服务启动,并设置为⾃动启动,否则你的作业不会被执⾏设置⽅法:我的电脑--控制⾯板--管理⼯具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"⾃动启动"--确定.如果报“SQL Server 阻⽌了对组件'xp_cmdshell'的过程'sys.xp_cmdshell'的访问-12-30 13:35”错误解决⽅法:执⾏下⾯的语句-- To allow advanced options to be changed.EXEC sp_configure'show advanced options', 1GO-- To update the currently configured value for advanced options.RECONFIGUREGO-- To enable the feature.EXEC sp_configure'xp_cmdshell', 1GO-- To update the currently configured value for this feature. RECONFIGUREGO。
SQL代理作业计划以及登录账户备份与还原

SQL代理作业计划以及登录账户备份与还原SQL Server代理作业计划脚本⽅式步骤:1将代理Job导出到sql脚本2到⽬标服务器上执⾏sql脚本即可完成代理的配置不⾜:脚本不⽀持批量导出,需要对单个Job逐⼀导出优点:对⽬标服务器现有代理⽆影响。
备份系统数据库⽅式由于所有的SQL 代理作业计划配置信息都会保存在msdb系统数据库中,所以可以对msdb 数据库备份即可备份所有的代理Job.步骤:1备份msdb数据库(与普通数据库备份相同)2禁⽤SQL Server 代理3还原msdb数据库(与普通数据库还原相同)4启动SQL Server 代理经过以上四个步骤即可恢复所有的Job作业代理。
不⾜:灵活性不⾜,如果⽬标服务器是新的服务器这种⽅式⽐较合适,如果⽬标服务器上有别的代理在使⽤,这种⽅式就不可⾏了。
SQL Server 登录名与账号备份与还原在SQL Server中master数据库会记录当前服务器相关的配置信息、登录账户与⽤户名、管理的数据库等信息。
在master数据库中登录名在syslogins视图中,⽤户名在sysusers视图中,⽬前没有办法对这两个视图进⾏修改。
备份登录账户与⽤户名,也只有备份master数据来完成。
步骤:1备份master数据(与普通数据看备份相同)2设置SQL Server为单⽤户模式(设置单⽤户模式步骤如下)a 在控制⾯板—>管理⼯具—>服务中找到MSSQLSERVER服务b停⽌MSSQLSERVER服务c 在MSSQLSERVER服务的属性中设置参数参数说明:-c:表⽰快速启动-m:表⽰单⽤户模式启动d启动MSSQLSERVER服务3启动命令提⽰符输⼊sqlcmd命令4输⼊restore database master from disk=’备份⽂件完整路径’5输⼊go 出现如下截图所⽰信息即恢复成功6重新启动SQL Server服务即可。
master数据库还原⽐较适合⽤于⽬标服务器是新的服务器,也就没有⽐的数据库在使⽤,如果⽬标服务器上有数据库在运⾏,这种⽅式就不适⽤了。
SQLServer代理:理解SQL代理错误日志处理方法

SQLServer代理:理解SQL代理错误⽇志处理⽅法SQL Server代理是所有实时数据库的核⼼。
代理有很多不明显的⽤法,因此系统的知识,对于开发⼈员还是DBA都是有⽤的。
这系列⽂章会通俗介绍它的很多⽤法。
如我们在这个系列的前⼏篇⽂章所见,SQL Server代理是由⼀系列的作业步骤组成,每个步骤是不同类型将要进⾏的⼯作。
如果你在第4篇所见,SQL Server代理也提供使⽤数据库邮件发送提醒的能⼒。
如果出现问题,不管怎样,你必须去查看下数据库邮件错误⽇志。
在这篇⽂章⾥,你会学到如何理解和查看SQL Server错误⽇志的所有相关知识。
你会查看最常见的错误⽇志,还有理解如何知道当⼀条信息需要你采取的⾏动,什么是对你最直接的信息。
⼀旦你理解了错误⽇志,当你进⾏SQL Server代理相关故障排除时,你会节约⼤量的时间。
SQL Server代理错误⽇志SQL Server代理维护它⾃⼰的错误⽇志,和SQL Server错误⽇志分开。
SQL Server错误⽇志位置SQL Server所在⽬录下的\MSSQL\Log⽬录(C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log,这篇⽂章使⽤SQL Server 2008R2作为默认实例)。
SQL Server错误⽇志默认名为ERRORLOG(没有⽂件扩展名),SQL Server代理错误⽇志默认名为SQLAGENTOUT。
在这篇⽂章⾥,我们的⼤部分时间会花在SQL代理错误⽇志,不管怎样,你也需要看下SQL Server错误⽇志。
查看SQL Server代理错误⽇志当你⾸次浏览到\MSSQL⽬录,并尝试查看⽇志⽬录,很可能你需要请求提升你的权限来获得访问这个⽬录的权限。
默认情况下,SQL Server和SQL Server代理的服务账号有这个⽬录的读写权限,但你(使⽤⽤户账号)不能访问。
sqlserver新建作业步骤

sqlserver新建作业步骤SQL Server是一种常用的关系型数据库管理系统,它提供了创建作业的功能,通过创建作业可以实现自动化的数据库管理和维护任务。
本文将详细介绍如何在SQL Server中新建作业步骤。
在SQL Server中,新建作业步骤需要经过以下几个步骤:1. 打开SQL Server管理器:首先,打开SQL Server管理器,可以通过开始菜单中的SQL Server程序组找到并打开SQL Server管理器。
2. 连接到SQL Server实例:在SQL Server管理器中,选择“连接”菜单,然后选择“连接对象资源管理器”。
在连接对象资源管理器中,展开“SQL Server组”和“本地服务器组”,选择要连接的SQL Server实例,右键点击并选择“连接”。
3. 创建新作业:在连接到SQL Server实例后,展开“SQL Server 代理”节点,右键点击“作业”文件夹,选择“新建作业”。
4. 填写作业信息:在新建作业对话框中,填写作业的名称和描述信息。
作业名称应该具有描述性,能够清楚地表达作业的用途。
5. 添加作业步骤:在新建作业对话框中,选择“步骤”页签,然后点击“新建”按钮。
在新建步骤对话框中,填写步骤的名称和描述信息。
6. 配置作业步骤:在新建步骤对话框中,选择要执行的类型,如Transact-SQL脚本、命令行脚本、分析服务处理任务等。
根据选择的类型,填写相应的参数和脚本。
7. 配置作业调度:在新建步骤对话框中,选择“调度”页签,然后点击“新建”按钮。
在新建调度对话框中,设置作业的调度计划,包括作业的执行频率、执行时间、重复次数等。
8. 配置作业通知:在新建步骤对话框中,选择“通知”页签,然后点击“新建”按钮。
在新建通知对话框中,设置作业的通知方式,如发送电子邮件或网络消息,以及接收通知的人员和组。
9. 保存作业设置:完成作业步骤的配置后,点击“确定”按钮保存作业设置。
SQL Server定时作业job的设置方法

跟作业执行相关的一些SQL Server知识:
SQLSERVERAGENT服务必须正常运行,启动它的NT登录用户要跟启动SQL Server数据库的NT登录用户一致。
点作业右键可以查看作业执行的历史记录情况,也可以立即启动作业和停止作业。
where job_id='B23BBEBE-A3C1-4874-A4AB-0E2B7CD01E14'
(所影响的行数为 1 行)
这样就可以添加、更新或删除那些曾经出error 14274 的作业了。
如果想把作业由一台机器迁移到另一台机器,可以先保留好创建作业的脚本, 然后在另一台机器上运行。
作业历史记录日志的最大大小(行数) 默认为1000 如果某台机器的作业数量很多,一定要提高它,例如为100000
每个作业历史记录日志的最大行数 默认为100 如果作业每天执行两次,需要保留一个月的日志,可以设为60。
它们之间有一个相互制约关系, 我们可以根据自己的需要来改。
导出所有作业的创建脚本操作步骤:
管理->SQL Server代理->作业(鼠标右键)->所有任务->生成SQL脚本->保存到操作系统下的某个sql文件
导出某一个作业的创建脚本操作步骤:
管理->SQL Server代理->作业->选中待转移的作业(鼠标右键)->所有任务->生成SQL脚本->保存到OS下的某个sql文件
use msdb
select * from sysjobs
找到originating_server 字段还是旧服务器的job_id, 然后执行update语句:
update sysjobs set originating_server='new_server_name'
sqlserver数据库备份作业步骤

在SQL Server 中设置数据库备份作业通常使用SQL Server 代理(SQL Server Agent)。
下面是在SQL Server 中创建数据库备份作业的一般步骤:1. 启用SQL Server 代理:-在SQL Server Management Studio (SSMS) 中,连接到SQL Server 数据库引擎。
-在"对象资源管理器" 中,展开"SQL Server 代理" 节点,右键单击"SQL Server 代理",选择"启动"。
2. 创建备份作业:-在"SQL Server 代理" 下,右键单击"作业",选择"新建作业"。
3. 配置基本信息:-在"常规" 选项卡上,输入作业的名称和描述。
-选择"启用" 以激活作业。
4. 配置步骤(作业步骤):-在"步骤" 选项卡上,点击"新建"。
-输入步骤的名称。
-在"类型" 下拉菜单中选择"Transact-SQL 脚本(T-SQL)"。
-在"数据库" 下拉菜单中选择要备份的数据库。
5. 输入备份脚本:-在"命令" 文本框中输入备份数据库的T-SQL 脚本6. 配置调度(可选):-在"调度" 选项卡上,配置作业的调度计划。
你可以选择一次性运行或按照特定的调度计划定期运行作业。
7. 配置通知(可选):-在"通知" 选项卡上,可以配置在作业完成时是否发送通知。
8. 保存并运行作业:-点击"确定" 保存作业设置。
-如果需要立即执行作业,可以右键单击作业,选择"运行"。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业步骤 3: 自定义应用 程序 (ActiveX Script)
是 失败?
否 是
失败?
否 失败? 是
否
写到应用程序 日志
通知操作员
通知操作员
创建作业:
使用SQL Server 管理平台创建作业,其具体步骤如下:
打开已经启动的SQL Server代理,用右键单击作业图标,从快捷菜单中 选择新建作业选项,则出现新建作业属性对话框,如图所示。
警报管理:
警报可以用于响应潜在的问题(如填满事务日志)。当警报被触发 时,通过电子邮件,寻呼或者Net send通知操作员,从而让操作员了解 系统中发生了什么事件。
可以定义一个警报,以便激活对特定的错误号或者属于特定严重级 别的错误组的响应。警报可以使用 SQL Server 管理平台定义。
• 创建(事件、性能和WMI)警报
创建警报步骤如下:
(1)打开SQL Server管理平台,展开指定的服务器,然后展开启动 的『SQL Server 代理』,用右键单击『警报』图标,从快捷菜单中选 择『新建警报』选项,则出现『新建警报属性』对话框,从中选择 『常规』页框,如图所示。
(2)选择『响应』页框,如图所示。其中,『执行作业』下拉框用于选 择出现警报时执行的作业;在要通知的操作员项下的表格中,用于显示把 警报送给哪些操作者,并定义以哪种方式(电子邮件、寻呼、Net send) 传送。
数据库维护计划向导:
利用数据库的维护计划向导可以方便地设置数据库的核心维护任务, 以便于定期地执行这些任务,其创建数据库维护计划的步骤如下:
展开服务器;展开『管理』文件夹,右键单击『维护计划』,然后 选择『维护计划向导』。
作业管理:
自动处理一个任务的第一步是创建对应的作业。一般来说,如果 要创建作业,必须执行以下三个步骤:
• 定义作业步骤;
• 如果该作业不是用户指定执行,创建作业执行的计划时间;
• 通知操作员作业的状态。
作业步骤定义:
作业步骤是作业对数据库或服务器执行的操作。每个作业必须至 少有一个作业步骤。作业步骤可以为:
(3)选择『选项』页框,如图所示。其中,『警报错误文本发送方式』、 『要发送的其他通知消息』、『两次响应之间的延迟象和数据均已添加且都在使用中,需要对 其进行维护,数据库的维护可以使它保持运行的最佳状态。例如,定期 备份数据库是很重要的。创建数据库维护计划可以让SQL Server自动而 有效地维护数据库,为系统管理员节省大量时间,也可以防止延误数据 库的维护工作。
使用SQL Server 管理平台可以创建一个操作员,其具体步骤如下:
打开 SQL Server 管理平台,展开 SQL Server 代理,右击『操作 员』图标,从快捷菜单中选择『新建操作员』选项,则出现『新建操作 员属性』对话框,如图所示。
选择『通知』页框,如图所示,使用此页可设置向操作员通知的警报和作业。
选择『高级』页框,如图所示。 选择『警报系统』页框,如图所示。
选择『作业系统』页框,如图所示。 选择『连接』页框,如图所示。
选择『历史记录』页框,如图所示。
定义操作员 :
可以接收电子通知的人员或组的别名 通知可能来自于 一个作业、作业步骤或警报
可以通过电子邮件, 寻呼或 net send 命令进行通知 可指派防故障操作员
在自动执行时,若出现故障,则 SQL Server 代理自动通知操作员, 操作员获得通知后及时排除故障。
如此在任务、操作员、警报三者之间既相互独立,又相互联系、 相互补充,构成了自动完成某些任务的有机整体。
SQL Server代理服务配置 :
SQL Server 代理可配置为手动启动或自动启动,以及可被禁用。 可使用SQL Server Configuration Manager 或Windows管理工具来 更改 SQL Server 代理的启动设置。
第 13 章
使用 SQL Server 代理作业
代理服务概述 SQL Server代理服务配置 定义操作员 作业管理 警报管理 数据库维护概述 数据库维护计划向导
代理服务概述:
SQL Server 代理是一个任务规划器和警报管理器,在实际应用时, 可以将那些周期性的工作定义成一个任务,在SQL Server代理的帮助 下自动执行;
(1)可执行程序和操作系统命令; (2)Transact-SQL 语句,包括存储过程和扩展存储过程; (3)Microsoft ActiveX 脚本; (4)复制任务; (5)Analysis Services 任务; (6)Integration Services 包。
创建作业步骤的方法:
作业步骤 1: 备份数据库 (Transact-SQL)
若计划实现自动执行作业或警报,通常应为 “SQL Server代理” 服务设置为 Windows 启动时自动启动。
允许自动处理不同的管理任务,启动后可以利用SQL Server 管理 平台对其进行配置,其具体步骤如下:
• 打开SQL Server 管理平台,展开指定的服务器,用右键单击 『SQL Server 代理]图标,从快捷菜单中选择『属性]选项,则出现『SQL Server 代理属性』对话框,选择『常规』页框,如图所示。
在 SQL Server 2005数据库引擎中,维护计划可创建一个作业以按 预定间隔自动执行这些维护任务。
维护计划向导可以用于设置核心维护任务,从而确保数据库执行良 好,做到定期备份数据库以防系统出现故障,对数据库实施不一致性检 查。维护计划向导可创建一个或多个 SQL Server 代理作业,代理作业 将按照计划的间隔自动执行这些维护任务。
每个作业必须有一个或者多个步骤,所以,除了定义作业属性外,在保 存作业前,还至少要定义一个作业步骤。如图所示。
选择新建作业步骤对话框中的『高级』页框,如左图所示。 选择『新建作业』中的『计划』页框,如右图所示。
选择『新建作业』中的『通知』页框,如图所示,可以为现有的作业 设置作业执行状态通知。