Share via


sp_syscollector_update_collection_set(Transact-SQL)

사용자 정의 컬렉션 집합의 속성을 수정하거나 사용자 정의 컬렉션 집합의 이름을 바꾸는 데 사용합니다.

주의 사항주의

프록시로 구성된 Windows 계정이 아직 로그인하지 않은 비대화형 또는 대화형 사용자인 경우 프로필 디렉터리가 존재하지 않으며 준비 디렉터리 만들기가 실패합니다. 따라서 도메인 컨트롤러의 프록시 계정을 사용하는 경우 프로필 디렉터리가 만들어지도록 적어도 한 번은 사용된 대화형 계정을 지정해야 합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

sp_syscollector_update_collection_set 
    [ [ @collection_set_id = ] collection_set_id ]
    , [ [ @name = ] 'name' ]
    , [ [ @new_name = ] 'new_name' ]
    , [ [ @target = ] 'target' ]
    , [ [ @collection_mode = ] collection_mode ]
    , [ [ @days_until_expiration = ] days_until_expiration ]
    , [ [ @proxy_id = ] proxy_id ]
    , [ [ @proxy_name = ] 'proxy_name' ]
    ,[ [ @schedule_uid = ] 'schedule_uid' ]
    ,[ [ @schedule_name = ] 'schedule_uid' ]
    , [ [ @logging_level = ] logging_level ]
    , [ [ @description = ] 'description' ]

인수

  • [ @collection\_set\_id = ] collection_set_id
    컬렉션 집합의 고유한 로컬 식별자입니다. collection_set_id는 int이며 name이 NULL일 경우 값을 가져야 합니다.

  • [ @name = ] 'name'
    컬렉션 집합의 이름입니다. name은 sysname이며 collection_set_id가 NULL일 경우 값을 가져야 합니다.

  • [ @new\_name = ] 'new_name'
    컬렉션 집합의 새 이름입니다. new_name은 sysname이며 사용될 경우 빈 문자열일 수 없습니다. new_name은 고유해야 합니다. 현재 컬렉션 집합 이름의 목록을 보려면 syscollector_collection_sets 시스템 뷰를 쿼리합니다.

  • [ @target = ] 'target'
    나중에 사용하도록 예약되어 있습니다.

  • [ @collection\_mode = ] collection_mode
    사용할 데이터 컬렉션의 유형입니다. collection_mode는 smallint이며 다음 값 중 하나를 포함할 수 있습니다.

    0 - 캐시된 모드. 데이터 컬렉션과 업로드가 별도의 일정에 속해 있습니다. 연속 컬렉션을 위해 캐시된 모드를 지정합니다.

    1 - 캐시되지 않은 모드. 데이터 컬렉션과 업로드가 같은 일정에 속해 있습니다. 임시 컬렉션이나 스냅숏 컬렉션을 위해 캐시되지 않은 모드를 지정합니다.

    캐시되지 않은 모드에서 캐시된 모드(0)로 변경하는 경우 schedule_uid 또는 schedule_name도 지정해야 합니다.

  • [ @days\_until\_expiration= ] days_until_expiration
    수집된 데이터가 관리 데이터 웨어하우스에 저장되는 일 수입니다. days_until_expiration은 smallint입니다. days_until_expiration은 0 또는 양의 정수여야 합니다.

  • [ @proxy\_id = ] proxy_id
    SQL Server 에이전트 프록시 계정의 고유 식별자입니다. proxy_id는 int입니다.

  • [ @proxy\_name = ] 'proxy_name'
    프록시 이름입니다. proxy_name은 sysname이며 Null을 허용합니다.

  • [ @schedule\_uid = ] 'schedule_uid'
    일정을 가리키는 GUID입니다. schedule_uid는 uniqueidentifier입니다.

    schedule_uid를 가져오려면 sysschedules 시스템 테이블을 쿼리합니다.

    collection_mode가 0으로 설정된 경우 schedule_uid 또는 schedule_name을 지정해야 합니다. collection_mode가 1로 설정된 경우 schedule_uid 또는 schedule_name을 지정하면 무시됩니다.

  • [ @schedule\_name = ] 'schedule_name'
    일정의 이름입니다. schedule_name은 sysname이며 Null을 허용합니다. 지정된 경우 schedule_uid는 NULL이어야 합니다. schedule_name을 가져오려면 sysschedules 시스템 테이블을 쿼리합니다.

  • [ @logging\_level = ] logging_level
    로깅 수준입니다. logging_level은 smallint이며 다음 값 중 하나일 수 있습니다.

    0 - 실행 정보 및 다음 항목을 추적하는 SSIS 이벤트 기록

    • 컬렉션 집합 시작/중지

    • 패키지 시작/중지

    • 오류 정보

    1 - 수준 0 로깅 및 다음 항목

    • 실행 통계

    • 지속적으로 실행되는 컬렉션 프로세스

    • SSIS의 경고 이벤트

    2 - 수준 1 로깅 및 SSIS의 세부 이벤트 정보

    logging_level의 기본값은 1입니다.

  • [ @description = ] 'description'
    컬렉션 집합에 대한 설명입니다. description은 nvarchar(4000)입니다.

반환 코드 값

0(성공) 또는 1(실패)

주의

msdb 시스템 데이터베이스의 컨텍스트에서 sp_syscollector_update_collection_set를 실행해야 합니다.

collection_set_id 또는 name에 값이 있어야 하며 둘 다 NULL일 수 없습니다. 이러한 값을 가져오려면 syscollector_collection_sets 시스템 뷰를 쿼리합니다.

컬렉션 집합이 실행 중인 경우에는 schedule_uid 및 description만 업데이트할 수 있습니다. 컬렉션 집합을 중지하려면 sp_syscollector_stop_collection_set를 사용합니다.

사용 권한

이 프로시저를 실행하려면 dc_admin 또는 dc_operator(EXECUTE 권한 있음) 고정 데이터베이스 역할의 멤버 자격이 필요합니다. dc_operator는 이 저장 프로시저를 실행할 수 있지만 이 역할의 멤버가 변경할 수 있는 속성은 제한적입니다. 다음 속성은 dc_admin만 변경할 수 있습니다.

  • @new\_name

  • @target

  • @proxy\_id

  • @description

  • @collection\_mode

  • @days\_until\_expiration

1.컬렉션 집합 이름 바꾸기

다음 예에서는 사용자 정의 컬렉션 집합의 이름을 바꿉니다.

USE msdb;
GO
EXECUTE dbo.sp_syscollector_update_collection_set
@name = N'Simple collection set test 1',
@new_name = N'Collection set test 1 in cached mode';
GO

2.컬렉션 모드를 캐시되지 않은 모드에서 캐시된 모드로 변경

다음 예에서는 컬렉션 모드를 캐시되지 않은 모드에서 캐시된 모드로 변경합니다. 이렇게 변경하려면 일정 ID 또는 일정 이름을 지정해야 합니다.

USE msdb;
GO
EXECUTE dbo.sp_syscollector_update_collection_set
@name = N'Collection set test 1 in cached mode',
@collection_mode = 0,
@schedule_uid = 'C7022AF3-51B8-4011-B159-64C47C88FF70';
-- alternatively, use @schedule_name.
-- @schedule_name = N'CollectorSchedule_Every_15min;
GO

3.다른 컬렉션 집합 매개 변수 변경

다음 예에서는 "Simple collection set test 2"라는 컬렉션 집합의 다양한 속성을 업데이트합니다.

USE msdb;
GO
EXEC dbo.sp_syscollector_update_collection_set
@name = N'Simple collection set test 2',
@collection_mode = 1,
@days_until_expiration = 5,
@description = N'This is a test collection set that runs in noncached mode.',
@logging_level = 0;
GO

참고 항목

참조

시스템 저장 프로시저(Transact-SQL)

syscollector_collection_sets(Transact-SQL)

dbo.sysschedules(Transact-SQL)

개념

데이터 컬렉션