카탈로그. 클린up_server_execution_keys

적용 대상: Azure Data Factory의 SQL Server SSIS Integration Runtime

적용 대상:SQL Server

SSISDB 데이터베이스에서 인증서와 대칭 키를 삭제합니다.

구문

catalog.cleanup_server_execution_keys [ @cleanup_flag = ] cleanup_flag ,  
[ @delete_batch_size = ] delete_batch_size  

인수

[ @cleanup_flag = ] 클린up_flag
실행 수준(1) 또는 프로젝트 수준(2) 인증서 및 대칭 키를 삭제할지 여부를 나타냅니다.

SERVER_OPERATION_ENCRYPTION_LEVEL이 PER_EXECUTION(1)으로 설정된 경우에만 실행 수준(1)을 사용합니다.

SERVER_OPERATION_ENCRYPTION_LEVEL PER_PROJECT(2)로 설정된 경우에만 프로젝트 수준(2)을 사용합니다. 인증서 및 대칭 키는 삭제되고 작업 로그가 클린 프로젝트에 대해서만 삭제됩니다.

[ @delete_batch_size = ] delete_batch_size
삭제할 키 및 인증서의 수입니다. 기본값은 1000입니다.

반환 코드 값

성공의 경우 0, 실패의 경우 1입니다.

결과 집합

없음

사용 권한

이 저장 프로시저를 실행하려면 다음 권한 중 하나가 필요합니다.

  • 프로젝트에 대한 READ 및 EXECUTE 권한 및 해당하는 경우 참조된 환경에 대한 READ 권한입니다.

  • ssis_admin 데이터베이스 역할의 멤버 자격입니다.

  • sysadmin 서버 역할의 멤버 자격입니다.

오류 및 경고

이 저장 프로시저는 다음 시나리오에서 오류를 발생합니다.

  • SSISDB 데이터베이스에는 하나 이상의 활성 작업이 있습니다.

  • SSISDB 데이터베이스가 단일 사용자 모드가 아닙니다.

설명

SQL Server 2012 서비스 팩 2는 internal.catalog_properties 테이블에 SERVER_OPERATION_ENCRYPTION_LEVEL 속성을 추가했습니다. 이 속성에는 두 가지 가능한 값이 있습니다.

  • PER_EXECUTION (1) - 중요한 실행 매개 변수 및 실행 로그를 보호하는 데 사용되는 인증서 및 대칭 키가 각 실행에 대해 만들어집니다. 기본값입니다. 각 실행에 대해 인증서/키가 생성되기 때문에 프로덕션 환경에서 성능 문제(교착 상태, 실패한 기본 테넌트 작업 등)가 발생할 수 있습니다. 하지만 이 설정은 다른 값(2)보다 높은 수준의 보안을 제공합니다.

  • PER_PROJECT(2) – 중요한 매개 변수를 보호하는 데 사용되는 인증서 및 대칭 키는 각 프로젝트에 대해 만들어집니다. 이렇게 하면 키와 인증서가 각 실행이 아닌 프로젝트에 대해 한 번 생성되므로 PER_EXECUTION 수준보다 성능이 향상됩니다.

catalog.클린 실행해야 합니다. 저장 프로시저를 up_server_log SERVER_OPERATION_ENCRYPTION_LEVEL 1에서 2로 변경하거나 2에서 1로 변경할 수 있습니다. 이 저장 프로시저를 실행하기 전에 다음을 수행합니다.

  1. catalog.catalog_properties(SSISDB 데이터베이스) 테이블에 OPERATION_CLEANUP_ENABLED 속성의 값이 TRUE로 설정되어 있는지 확인합니다.

  2. Integration Services 데이터베이스(SSISDB)를 단일 사용자 모드로 설정합니다. SQL Server Management Studio에서 SSISDB에 대한 데이터베이스 속성 대화 상자를 시작하고 옵션 탭으로 전환한 다음 액세스 제한 속성을 SINGLE_USER(단일 사용자 모드)로 설정합니다. cleanup_server_log 저장 프로시저를 실행한 후에 속성 값을 다시 원래 값으로 설정합니다.

  3. 저장 프로시저 catalog.클린 실행up_server_log.

  4. 이제 catalog.catalog_properties(SSISDB 데이터베이스) 테이블의 SERVER_OPERATION_ENCRYPTION_LEVEL 속성 값을 변경합니다.

  5. catalog.cleanup_server_execution_keys 저장 프로시저를 실행하여 SSISDB 데이터베이스에서 인증서 키를 정리합니다. SSISDB 데이터베이스에서 인증서 및 키를 삭제하는 데 시간이 오래 걸릴 수 있으므로 사용량이 많은 시간에 주기적으로 실행해야 합니다.

    범위 또는 수준(실행 및 프로젝트) 및 삭제할 키 수를 지정할 수 있습니다. 삭제할 기본 일괄 처리 크기는 1000입니다. 수준을 2로 설정하면 연결된 프로젝트가 삭제된 경우에만 키와 인증서가 삭제됩니다.

자세한 내용은 다음 기술 자료 문서를 참조하세요. 해결 방법: SQL Server 2012에서 배포 저장소로 SSISDB를 사용하는 경우 성능 문제

예시

다음 예제에서는 클린up_server_execution_keys 저장 프로시저를 호출합니다.

USE [SSISDB]  
GO  
  
DECLARE@return_value int  
  
EXEC@return_value = [internal].[cleanup_server_execution_keys]  
@cleanup_flag = 1,  
@delete_batch_size = 500  
  
SELECT'Return Value' = @return_value  
  
GO