SSIS 패키지는 SQL Server 에이전트 작업 단계에서 호출 시 실행 되지 않습니다.

기술 자료 번역 기술 자료 번역
기술 자료: 918760 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

현상

Microsoft SQL Server 2005 통합 서비스 (SSIS) 패키지는 SQL Server 에이전트 작업 단계에서 호출 하는 경우 SSIS 패키지가 실행 되지 않습니다. 그러나 SSIS 패키지를 수정 하지 않는 경우 외부 SQL Server 에이전트가 성공적으로 실행 됩니다.

해결 방법

이 문제를 해결 하려면 다음 방법 중 하나를 사용 합니다. 가장 적절 한 방법을 환경 및 패키지가 실패 한 이유를 따라 달라 집니다. 패키지가 실패 한 이유는 다음과 같습니다.
  • SQL Server 에이전트에서 패키지를 실행 하는 데 사용 되는 사용자 계정이 원래 패키지 작성자에서 다릅니다.
  • 사용자 계정에 연결 하도록 또는 SSIS 패키지 외부의 리소스에 액세스할 권한이 없습니다.
다음 시나리오에서 패키지가 실행 되지 않을.
  • 현재 사용자가 패키지에서 비밀을 해독할 수 없습니다. 이 시나리오는 현재 계정 또는 실행 계정을 원래 패키지 작성자에서 다른 패키지의 ProtectionLevel 속성 설정은 현재 사용자가 패키지에서 비밀을 해독할 수 없습니다 경우 발생할 수 있습니다.
  • 현재 사용자의 권한이 없기 때문에 통합된 보안을 사용 하는 SQL Server 연결에 실패 합니다.
  • 현재 사용자가 연결 관리자에 액세스 하는 파일 공유에 쓸 수 있는 권한이 없으므로 파일 액세스 오류가 발생 합니다. 예를 들어,이 시나리오는 로그인 및 암호를 사용 하지 않는 텍스트 로그 공급자를 발생할 수 있습니다. 이 시나리오에 SSIS 파일 시스템 작업 같은 파일 연결 관리자는 작업이 발생할 수도 있습니다.
  • 레지스트리 기반 SSIS 패키지 구성을 HKEY_CURRENT_USER 레지스트리 키를 사용합니다. HKEY_CURRENT_USER 레지스트리 키에 사용자에 따라 다릅니다.
  • 작업 또는 연결 관리자가 현재 사용자 계정에 올바른 사용 권한이 있는지 필요 합니다.
방법 1: SQL Server 에이전트 프록시 계정 사용

방법 2: Serverstorage를 SSIS 패키지의 ProtectionLevel 속성을 설정

방법 3: Encryptsensitivewithpassword에 SSIS 패키지의 ProtectionLevel 속성을 설정

방법 4: 사용 SSIS 패키지 구성 파일

방법 5: 패키지 서식 파일 만들기

현재 상태

이 동작은 의도 된 것입니다.

고급 정보

문제를 재현 하는 방법

  1. SQLServer2005SQLAgentUser 그룹의 일부가 아닌 사용자로 로그인 합니다. 예를 들어, 로컬 사용자를 만들 수 있습니다.
  2. SSIS 패키지를 만들고 ExecuteSQL 작업에 추가 합니다. 다음 문자열을 사용 하 여 msdb를 로컬 파일에는 OLE DB 연결 관리자를 사용. ' Windows 인증 ' -SQLSourceType: "직접 입력" -SQLStatement: "sp_who"
  3. 성공적으로 실행 되는지 확인 하려면 패키지를 실행 합니다.
  4. ProtectionLevel 속성을 Encryptsensitivewithpassword로 설정 되어 있는지 확인할 수 있습니다.
  5. SQL Server 에이전트 작업 및 작업 단계를 만듭니다. 에 다음 계정으로 실행 목록에서 클릭 SQL Server 에이전트 서비스 작업 단계를 실행.
SQL Server 에이전트 작업 기록을 텍스트를 다음과 유사한 정보가 표시 됩니다.

사용자로 실행: 도메인 \ 사용자 이름입니다. 패키지 실행이 실패 합니다. 단계가 실패 했습니다.

패키지 암호를 해독 합니다.

SSIS 패키지의 ProtectionLevel 속성의 기본 설정은 EncryptSensitiveWithUserKey입니다. SSIS 패키지를 저장할 때 "암호, 사용자 이름, 및 연결 문자열 같은 중요 한,"으로 표시 된 속성이 포함 될 패키지 부분만 암호화 합니다. 따라서 패키지를 다시 로드할 때 현재 사용자의 암호를 해독 하는 중요 한 속성에 대 한 암호화 요구 사항을 만족 해야 합니다. 그러나 현재 사용자가 패키지를 로드할 암호화 요구 사항을 충족 시킬 수 없습니다. SQL Server 에이전트 작업 단계에서 패키지를 실행 하면 기본 계정 SQL Server 에이전트 서비스 계정이입니다. 이 기본 대부분 패키지 작성자 이외의 사용자 계정인. 따라서 SQL Server 에이전트 작업 단계의 로드 하 고 작업 단계를 실행할 수 있지만 실패는 패키지 연결을 완료할 수 없습니다. 예를 들어, 패키지는 OLE DB 연결 또는 FTP 연결을 완료할 수 없습니다. 연결할 수 있어야 자격 증명의 암호를 해독할 수 없습니다 때문에 해당 패키지는 실패 합니다.

중요 한?각 컴퓨터에서 사용 되 고 필요한 계정을 확인 하는 환경 및 개발 프로세스를 고려해 야 합니다. ProtectionLevel 속성 설정 Encryptsensitivewithuserkey는 강력한 설정이입니다. 처음 배포 문제를 일으키는 때문에이 설정은 할인 수 합니다. 해당 계정에 로그인 하는 경우 패키지를 암호화할 수 있습니다. Dtutil.exe SSIS 명령 프롬프트 유틸리티를.cmd 파일 및 SQL Server 에이전트 명령 하위 시스템을 사용 하 여 보호 수준을 변경할 수도 있습니다. 예를 들어, 다음이 단계를 수행 합니다. 배치 파일 및 루프 Dtutil.exe 유틸리티를 사용할 수 있으므로 여러 패키지를 동시에 같이 수 있습니다.
  1. 암호화 암호를 사용 하 여 패키지를 수정 합니다.
  2. Dtutil.exe 유틸리티를 통해 사용 하는 운영 체제 (cmd 실행)ProtectionLevel 속성에 EncryptSensitiveWithUserKey 변경 SQL Server 에이전트 작업 단계입니다. 패키지 암호를 사용 하 여 다음 패키지의 암호를 해독 하는 과정입니다. 패키지를 암호화 하는 데 사용 되는 사용자 키 SQL Server 에이전트 작업 단계에서 설정 되는다음 계정으로 실행 목록입니다.

    참고 키 사용자 이름과 컴퓨터 이름이 포함 되므로 패키지를 다른 컴퓨터로 이동 하는 효과 제한 될 수 있습니다.

SSIS 패키지 실패에 대 한 오류 정보를 자세히 설명 되어 있는지 확인

제한 된 정보를 SQL Server 에이전트 작업 기록을 사용 하는 대신 SSIS SSIS 패키지 실패에 대 한 오류 정보가 있는지 확인 하려면 로깅을 사용할 수 있습니다. 또한 SSIS 하위 시스템 명령 대신 exec 하위 시스템 명령 사용 하 여 패키지를 실행할 수 있습니다.

SSIS 로깅에 대 한

SSIS 로깅 및 로그 공급자를 사용 하면 패키지 실행 및 오류에 대 한 세부 정보를 캡처할 수 있습니다. 기본적으로, 패키지 정보를 기록 하지 않습니다. 패키지 로그 정보를 구성 해야 합니다. 패키지 로그 정보를 구성할 때 다음과 같은 자세한 정보가 표시 됩니다. 이 경우 사용 권한 문제 임을 알 수 있습니다.

OnError DOMAINNAME, DOMAINNAME\USERNAME FTP Task,{C73DE41C-D0A6-450A-BB94-DF6D913797A1},{2F0AF5AF-2FFD-4928-88EE-1B58EB431D74},4/28/2006 오후 1시 51분: 59, 2006/4/28 1시 51분: 59,-1073573489, 0 x "FTP 연결 관리자"를 사용 하 여 FTP 서버에 연결할 수 없습니다.

OnError, 도메인 이름, DOMAINNAME\USERNAME, Execute SQL Task,{C6C7286D-57D4-4490-B12D-AC9867AE5762},{F5761A49-F2F9-4575-9E2B-B3D381D6E1F3},4/28/2006 오후 4시 07분: 00, 2006/4/28 4시 07분: 00 PM,-1073573396, 0 x, "user01.msdb" 연결을 설정할 수 없습니다. 이 연결에 올바른 사용 권한이 연결 제대로 구성 되어 있지 않습니다.

Exec 하위 시스템 명령에 대 한 정보 출력

Exec 하위 시스템 명령 방식을 사용 하 여 자세한 콘솔 스위치 SSIS SSIS Dtexec.exe 명령줄 실행 파일을 호출 하려면 명령줄에 로그를 추가 합니다. 또한 출력 파일의 고급 작업 기능을 사용 합니다. 또한 사용할 수 있는 기록에 단계 출력 포함 옵션 파일 또는 SQL Server 에이전트 작업 기록 로깅 정보를 리디렉션할 수 있습니다.

다음은 명령줄의 예입니다.

dtexec.exe /FILE 
"C:\_work\SSISPackages\ProtectionLevelTest\ProtectionLevelTest\AgentTesting.dtsx" /MAXCONCURRENT " -1 
" /CHECKPOINTING OFF  /REPORTING V  /CONSOLELOG NCOSGXMT


/Console 로깅 다음과 유사한 정보를 반환 합니다.

Error: 2006-04-27 18:13:34.76
   Code: 0xC0202009
   Source: AgentTesting Connection manager "(local).msdb"
   Description: An OLE DB error has occurred. Error code: 0x80040E4D.
An OLE DB record is available.  Source: "Microsoft SQL Native Client"  Hresult: 0x80040E4D  Description: "Login failed for user 'DOMAINNAME\username'.".
End Error


Error: 2006-04-28 13:51:59.19
   Code: 0xC0016016
   Source:  
   Description: Failed to decrypt protected XML node "DTS:Property" with error 0x80070002 "The system cannot find the file specified.". You may not be authorized to access this information. This error occurs when there is a cryptographic error. Verify that the correct key is available.
End Error


Log:
     Name: OnError
     Computer: COMPUTERNAME
     Operator: DOMAINNAME\username
     Source Name: Execute SQL Task
     Source GUID: {C6C7286D-57D4-4490-B12D-AC9867AE5762}
     Execution GUID: {7AFE3D9E-5F73-42F0-86FE-5EFE264119C8}
     Message: Failed to acquire connection "(local).msdb". Connection may not be configured correctly or you may not have the right permissions on this connection.
     Start Time: 2006-04-27 18:13:34
     End Time: 2006-04-27 18:13:34
End Log

참조

유사한 문제에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 하십시오.
904800SQL Server 2005에는 SQL Server 2005 통합 서비스 패키지를 실행 하려고 하면 "로드 오류" 오류 메시지가 나타난다
일괄 처리 작업에서 Dtutil.exe 유틸리티를 사용 하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 하십시오.
906562SQL Server 2005에서 SQL Server 통합 서비스 (SSIS) 패키지의 보호 수준을 설정 하려면 dtutil 유틸리티 (Dtutil.exe)를 사용 하는 방법
패키지 템플릿을 만드는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
908018SQL Server 비즈니스 인텔리전스 개발 Studio에서 패키지 템플릿을 만드는 방법


SSIS 패키지 보안 및 ProtectionLevel 속성에 대 한 자세한 내용은 SQL Server 2005 온라인 설명서에서 "통합 서비스에 대 한 보안 고려 사항" 항목을 참조 하십시오.

그러나 사용자가 기본 에이전트 작업 단계 설정에서를이 상태에 넣을 인식 하지 않습니다. SQL Server 에이전트 프록시 및 SSIS에 대 한 자세한 내용은 SQL Server 2005 온라인 설명서의 다음 항목을 참조 하십시오.
  • 패키지 실행의 SQL Server 에이전트 일정
  • SQL Server 에이전트 프록시 만들기

속성

기술 자료: 918760 - 마지막 검토: 2013년 7월 16일 화요일 - 수정: 1.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2008 Service Pack 1
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2005 Service Pack 3
  • Microsoft SQL Server 2005 Service Pack 2
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
키워드:?
kbsqlsetup kbprb kbsql2005ssis kbsql2005setup kbexpertiseinter kbexpertiseadvanced kbtshoot kbmt KB918760 KbMtko
기계 번역된 문서
이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.
이 문서의 영문 버전 보기:918760

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com