UNC 경로를 사용하여 로컬 파일을 원격 드라이브에 복사하는 파일 시스템 작업이 있습니다. 최근에 대상 파일 서버가 이동되어 경로를 업데이트했지만 이제 다음과 같은 오류 메시지가 나타납니다.
[File System Task] Error: File or directory "\\path\filename.ext" represented by connection "XYZ" does not exist.
파일은 확실히 존재합니다. 이 오류의 원인은 무엇입니까?
정확한 경로를 실행 대화 상자에 복사하고 문제없이 파일을 열 수 있습니다. 또한 대상 폴더를 탐색하고 VS 외부의 파일에 쓰거나 삭제할 수 있습니다. 관련성이있는 경우 상위 폴더에 대한 권한이 없습니다.
파일 연결이 기존 파일로 설정되어 있습니다. 파일 시스템 작업이 덮어 쓰도록 설정되어 있습니다. 경로는 식이나 변수가 아니라 하드 코딩됩니다. 이 보고서는 몇 달 동안 실행되었으며 이제 변경된 것은 파일 서버와 경로뿐입니다. 이전 경로도 UNC였습니다.
온라인에서 찾은 대부분은 배포와 관련이 있지만 패키지가 실행되는 계정과 동일한 계정으로 패키지를 실행하는 서버 (이상적이지 않음)에서 개발 중입니다. 어쨌든 SQL 에이전트를 통해 실행하거나 VS 내에서 디버깅 할 때 동일한 오류가 발생합니다.
무엇보다도 화가 나는 다른 SSIS 작업은 문제없이 동일한 폴더에 기록합니다. 그러나 여기에는 게시 된 파일의 이름을 바꾸는 후속 스크립트 실행 작업이 포함되므로 실행시 정확한 대상 파일이 존재하지 않습니다. 이 패키지는 매일 같은 파일을 덮어 씁니다. 이 문제를 해결할 수없는 경우 여기에도 이러한 작업을 추가하겠습니다.
대상 파일을 삭제하면 작업이 한 번 실행됩니다. 다음날 대상이 다시 존재하므로 패키지가 실패하고 기존 파일을 덮어 쓰는 데 문제가있는 것 같습니다. 물론 "삭제"파일 시스템 작업을 삽입 할 수 있습니다. 대상이 존재하지 않는다고 주장하는 것 외에는 예외입니다.
파일 연결 및 파일 시스템 작업을 다시 만들려고 시도했지만 변경 사항은 없습니다.
나는 오래 전에 같은 문제가 있었고이 솔루션이 저에게 효과적이었습니다.
내 오류는 UNC 경로를 사용하고 패키지 ALL
가 경로의 폴더 및 파일에 액세스 할 수없는 runnnig 계정을 사용했기 때문 입니다.
내부적으로 SSIS 패키지는의 모든 파일과 디렉터리를 나열하려고 \\path
합니다. 이렇게하면 예외가 발생하면 해당 오류가 발생합니다.
이 문제를 해결하려면 SSIS 패키지를 실행하는 계정이 액세스중인 ALL
경로의 폴더 및 파일에 액세스 할 수 있는지 확인해야합니다 .
작동하는지 확인하려면 관련 계정으로 로그온하거나 지정된 사용자로 명령 창을 실행 한 다음 모든 파일 및 하위 디렉터리에 대한 전체 권한이 있는지 확인하십시오.
같은 문제가있을 수도 있습니다. 시도해 볼 가치가 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다