SQL Server Agent有啥作用 怎样用它
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server Agent有啥作用 怎样用它相关的知识,希望对你有一定的参考价值。
SQL Server Agent代理服务,是sql server的一个标准服务,作用是代理执行所有sql的自动化任务,以及数据库事务性复制等无人值守任务。
这个服务在默认安装情况下是停止状态,需要手动启动,或改为自动运动,否则sql的自动化任务都不会执行的,还要注意服务的启动帐户。
SQL Server Agent 也叫SQL Server代理,以前称为SQL执行者,这是SQL Server
的任务日程表。
这种服务主要是用于在设定的时间备份、复制数据,以及在自动执行调度表上设置的其他项目。启动这个服务后,设定好在什么时候做什么事,这个服务会让它自动运行,不需要人工干预。
扩展资料
SQL Server索引的作用:
微软的SQL SERVER提供了两种索引:聚集索引和非聚集索引。下面,举例来说明一下聚集索引和非聚集索引的区别:
其实,汉语字典的正文本身就是一个聚集索引。比如,要查“安”字,就会很自然地翻开字典的前几页,因为“安”的拼音是“an”,而按照拼音排序汉字的字典是以英文字母“a”开头并以“z”结尾的,那么“安”字就自然地排在字典的前部。
如果翻完了所有以“a”开头的部分仍然找不到这个字,那么就说明的字典中没有这个字;同样的,如果查“张”字,那也会将您的字典翻到最后部分,因为“张”的拼音是“zhang”。
也就是说,字典的正文部分本身就是一个目录,不需要再去查其他目录来找到需要找的内容。把这种正文内容本身就是一种按照一定规则排列的目录称为“聚集索引”。
参考资料来源:
百度百科——SQL Server Agent
主要执行以下步骤在SQL Server Enterprise Manager 中配置SQL Server Agent:
(1) 启动SQL Server Enterprise Manager, 登录到指定的服务器打开Management 文件夹,启动SQL Server Agent。
(2) 右击SQL Server Agent 图标,在弹出菜单中选择Properties 选项。打开SQL Server Agent Properties 对话框,选中General 标签页。如图17-1 所示。其中各选项的含义为:
System account: 定义SQL Server Agent 运行于哪个系统账号下,该系统账号是sysadmin 角色的成员;
This account: 定义SQL Server Agent 运行于哪一个NT 账号下,该账号必须是运行SQL Server Agent 服务器上的sysadmin 角色,选择此选项,必须在Password处提供密码。常在下列情况中选中该选项:
把事件转寄到其它NT 计算机的应用日志;
如何来创建一个作业,该作业要使用多个计算机上的资源;
通过电子邮件或寻呼通知操作员消息。
Mail Profile 有效的邮件配置文件名,该文件保存通过SQL Mail 为SQL ServerAgent 运行账号配置的邮件系统正常工作的配置信息;
Save copies of the sent messages in the Sent Items folder: 指定发送消息存放的文件目录;
File name: 指定SQL Server Agent 日志文件名,缺省名为C:\Mssql7\Log\Sqlagent.out;
Error message pop-up recipient 指定接收网络弹出错误消息的接收者名字,这些错误消息由SQL Server Agent 写入它的错误日志。
(3) 选中Advanced 标签页
Auto restart SQL Server if it stops unexpectedly :表示如果SQL Server 意外停止运行,则将自动重新启动;
Auto restart SQL Server Agent if it stops unexpectedly: 表示如果SQL Server Agent意外停止运行,则将自动重新启动;
Forward events to a different server: 表示将事件转寄给其它服务器。在Server 旁的下拉列表中选择接收服务器;
Unhandled events: 表示转寄那些不是在本地服务器上处理的事件;All 表示所有事件;
If error has severity of or above: 表示只有在错误等级大于或等于给定值时,才将事件转寄给所选服务器;
Idle CPU(s) Condition: 定义了CPU 空闭状态的属性值,即CPU 平均使用率低于给不定期值且该状态持续的时间超过给定时间,则认为CPU 处于空闭状态。
4) 选中Alert System 标签页
Address formatting for page e-mails: 该区域用来设定消息属性并在寻呼信息中加入错误信息;
Fail-safe operator: 表示失败安全型操作员,如果由于不确定的原因使消息无法到达指定的操作员,则SQL Server Agent 会把该消息传给失败安全型操作员;
(5) 选中Job System 标签页
Job history log: 该区域指定日志的大小以及每件作业的最大行数,从而避免填满msdb 数据库;
Job execution: 该区域用来设定在作业执行结束前SQL Server Agent 的最长等待时间,如果超过这一时间作业仍没有执行,则SQL Server Agent 将关闭;
Non-SysAdmin job step proxy account: 该区域用来设定执行CmdExec 和ActiveScripting
作业的限制。
(6) 选中Connection 标签页
SQLServer Connection: 该区域定义了将SQL Server Agent 连接到SQL Server 时使用的认证模式;
SQLServer alias 定义:本地SQL Server 服务器的别名。
注意:配置完SQL Server Agent之后需要重新启动,这样配置才能生效本回答被提问者采纳
WITH VIEW_METADATA 选项对 SQL Server 中的视图有啥作用?
【中文标题】WITH VIEW_METADATA 选项对 SQL Server 中的视图有啥作用?【英文标题】:What does WITH VIEW_METADATA option do with views in SQL Server?WITH VIEW_METADATA 选项对 SQL Server 中的视图有什么作用? 【发布时间】:2015-03-31 16:57:16 【问题描述】:我使用的是 SQL Server 2012。
定义是:
WITH VIEW_METADATA 指定时返回视图的元数据而不是基表
这是查询:
alter view dbo.sales(vi)
with view_metadata
as
select o.[SalesOrderID]
from [Sales].[SalesOrderHeader] o
select * from dbo.sales
返回:
vi
43698
43699
43700
43701
当更改为WITH SCHEMABINDING
时也会产生相同的结果。
谁能告诉我WITH VIEW_METADATA
的含义以及它与其他视图选项有何不同?
【问题讨论】:
【参考方案1】:VIEW_METADATA
当客户端 API(例如:DB-Library、ODBC 和 OLE DB API、ORM 工具)向 SQL Server 请求引用视图的查询的元数据信息(也称为浏览模式元数据)时,SQL在描述结果集中的列时,服务器会返回组成视图的基表名称。
在某些情况下,例如:
-
出于安全原因,您希望对客户端应用程序隐藏基表名称,或者
客户端应用程序因为您将以前的基表重组为数据库中的新结构和组织,并使用了同名视图,所以该模式在应用程序中看起来是相同的。但是应用程序正在捕获列的基表名称,这不再正确
您可以使用 VIEW_METADATA 选项创建视图。
VIEW_METADATA
使 SQL Server 在描述结果集中的列时返回视图名称,并对客户端应用程序隐藏基表。
在 SSMS 中进行交互时,您不会看到带有 VIEW_METADATA
或不带有 VIEW_METADATA
的视图有任何差异。
更多讨论请见Practical use of VIEW_METADATA on views?Any? on SQL Central
架构绑定
如果使用schemabinding
创建视图,则不能以影响视图定义的方式修改基表。必须首先修改或删除视图定义本身,以删除对要修改的表的依赖关系。例如:
create table dbo.SomeTable (
c1 int null,
c2 int null
)
go
create view dbo.SomeView with schemabinding
as
select c1 from dbo.SomeTable
go
alter table dbo.SomeTable drop column c1
go
--Returns error:
-- Msg 5074, Level 16, State 1, Line 13
-- The object 'SomeView' is dependent on column 'c1'.
-- Msg 4922, Level 16, State 9, Line 13
-- ALTER TABLE DROP COLUMN c1 failed because one or more objects access this column.
现在从视图中删除 schemabinding
选项并重试:
alter view dbo.SomeView
as
select c1 from dbo.SomeTable
go
alter table dbo.SomeTable drop column c1
go
-- Works fine, but any further references to the view return errors.
select top 10 * from dbo.SomeView
-- Msg 207, Level 16, State 1, Procedure SomeView, Line 3 [Batch Start Line 30]
-- Invalid column name 'c1'.
-- Msg 4413, Level 16, State 1, Line 31
-- Could not use view or function 'dbo.SomeView' because of binding errors.
【讨论】:
【参考方案2】:使用 SCHEMABINDING 非常常见,因为它锁定了基础表,无法更改表的结构,因此视图将继续工作。如果没有它,其他开发人员可能会删除视图中使用的列,从而破坏视图。
'With view_metadata' 为客户端提供有关视图的元数据,客户端需要针对视图创建游标。它的使用频率几乎没有 SCHEMABINDING 那样频繁。 https://technet.microsoft.com/en-us/library/ms187956%28v=sql.110%29.aspx
当您在 SSMS 中进行选择时,这两个参数都没有太大影响,并且您会看到相同的数据和列。
【讨论】:
以上是关于SQL Server Agent有啥作用 怎样用它的主要内容,如果未能解决你的问题,请参考以下文章
apache Ambari Server和Agent有啥区别
sql server 2000中,如何查询事务日志?事务日志有啥作用?
在sqlserver中临时TMP表有啥作用?里面储存的都是啥数据?