core.sp_create_snapshot (Transact-SQL)

在管理数据仓库的 core.snapshots 视图中插入一行。 每当上载包开始向管理数据仓库上载数据时,都会调用此过程。

主题链接图标 Transact-SQL 语法约定

语法

core.sp_create_snapshot [ @collection_set_uid = ] 'collection_set_uid'
    , [ @collector_type_uid = ] 'collector_type_uid'
    ,[ @machine_name = ] 'machine_name'
    , [ @named_instance = ] 'named_instance'
    , [ @log_id = ] log_id 
    , [ @snapshot_id = ] snapshot_id OUTPUT

参数

  • [ @collection\_set\_uid = ] 'collection_set_uid'
    收集组的 GUID。 collection_set_uid 的数据类型为 uniqueidentifier,无默认值。 若要获取 GUID,请在 msdb 数据库中查询 dbo.syscollector_collection_sets 视图。

  • [ @collector\_type\_uid = ] 'collector_type_uid'
    收集器类型的 GUID。 collector_type_uid 的数据类型为 uniqueidentifier,无默认值。 若要获取 GUID,请在 msdb 数据库中查询 dbo.syscollector_collector_types 视图。

  • [ @machine\_name= ] 'machine_name'
    收集组所在的服务器的名称。 machine_name 的数据类型为 sysname,无默认值。

  • [ @named\_instance= ] 'named_instance'
    收集组实例的名称。 named_instance 的数据类型为 sysname,无默认值。

  • [ @log\_id = ] log_id
    映射到收集数据的服务器上的收集组事件日志的唯一标识符。 log_id 的数据类型为 bigint,无默认值。 若要获得 log_id 的值,请在 msdb 数据库中查询dbo.syscollector_execution_log 视图。

  • [ @snapshot\_id = ] snapshot_id
    插入到 core.snapshots 视图中的行的唯一标识符。 snapshot_id 的数据类型为 int,并作为 OUTPUT 返回。

返回代码值

0(成功)或 1(失败)

注释

每当上载包开始将数据上载到管理数据仓库时,数据收集器运行时组件都会调用 core.sp_create_snapshot。

此过程进行以下检查:

  • collection_set_uid 与 core.source_info_internal 表中的现有条目匹配。

  • collector_type_uid 与 core.supported_collector_types 视图中的现有条目匹配。

如果未通过上述任一检查,该过程将失败并返回一个错误。

权限

需要具有 mdw_writer(拥有 EXECUTE 权限)固定数据库角色的成员身份。

示例

下面的示例为“磁盘使用情况”收集组创建一个快照,将该快照添加到管理数据仓库中,并返回快照标识符。 在本示例中,使用默认实例。

USE <management_data_warehouse>;
DECLARE @snapshot_id int;
EXEC core.sp_create_snapshot 
    @collection_set_uid = '7B191952-8ECF-4E12-AEB2-EF646EF79FEF', 
    @collector_type_uid = '302E93D1-3424-4BE7-AA8E-84813ECF2419',
    @machine_name = '<computername>',
    @named_instance = 'MSSQLSERVER',
    @log_id = 11, -- ID of the log for the collection set
    @snapshot_id = @snapshot_id OUTPUT;

请参阅

参考

系统存储过程 (Transact-SQL)

数据收集器存储过程 (Transact-SQL)

概念

管理数据仓库