2014-01-07 5 views
3

사용 가능한 모든 문서 형식을 사용하지 않고 SQL Server 2008 R2 데이터베이스를 상속 받고있는 상황입니다. "아마도"데이터베이스가 SSIS 패키지의 데이터로로드됩니다. &이 패키지를 사냥하려고합니다.데이터베이스 테이블에 데이터를로드하는 SSIS 패키지 가져 오기

데이터베이스에 대해 실행할 수있는 T-SQL 명령이 있습니까? 마지막으로 데이터베이스에 데이터가로드 된 시간과 해당 데이터의 출처가 표시됩니다.

답변

2

축하합니다. 글쎄, 정말로 새로운 것을 배울 수있는 새로운 기회에 오신 것을 환영합니다. 나는에 Serverfault에 비슷한 질문을 기억 - 당신은 SQL 서버 돌보는에 대해 아무것도 알 수없는 경우, 여기 시작 10 servers to administer and I'm a history major

  1. sp_blitz. 이 스크립트는 서버에서 실행할 수있는 편리한 스크립트와 해당 스크립트의 결과에 대한 교육 및 조언을 제공합니다. 또한 훌륭한 컨설팅 서비스를 제공하게되어 기쁩니다. StackExchange 네트워크는 Brent Ozar Unlimited를 사용하므로이를 염두에 두십시오. 어쨌든, 저장된 proc은 서버를 상속받은 후에 알아야 할 모든 것을 말해 줄 것입니다 (백업이 마지막으로 실행 됐을 때, 거기에 트리거가 있는지, 얼마나 바보가이 물건에 담겨 있는지)

  2. 열기 SQL Server Management Studio를 설치하고 인스턴스에 연결 한 후 SQL Agent를 확인하십시오. 거기에있는 각 작업을 두 배로 만들고 모든 작업 단계를 살펴보십시오. 이것은 당신에게 어떤 간격으로 달릴 예정인지 알 수있는 기회를 제공 할 것입니다. Windows 스케줄러 (제어판 \ 모든 제어판 항목 \ 관리 도구 \ 작업 스케줄러) %windir%\system32\taskschd.msc /s SQL 에이전트의 경우 "SQL Server Integration Services"유형의 작업 하위 시스템에주의를 기울여야합니다. dtexec.exe에 대한 참조를 볼 수도 있기 때문에 모든 OS 명령에주의해야합니다. 이는 SSIS 패키지를 "실행"하게 만드는 실행 파일입니다. 작업 스케줄러 인 경우 dtexec 호출을 찾고 (그리고 그것이 ImportData.bat와 같은 불투명 한 .bat 파일로 감싸이지 않기를 바란다). 또한 조직에서 다른 스케줄링 도구를 사용하는지 여부도 문의하십시오. 몇 일 전에, 우리는 Tidal을 큰 효과로 사용했습니다. 여하튼, 주기적으로 수행되는 작업을 결정할 수있는 곳입니다.

  3. 패키지를 찾으십시오. 패키지는 데이터베이스 또는 파일 시스템에 있습니다. 데이터베이스는 2008, 2008 R2 및 2012 패키지 배포 모델 프로젝트에 msdb.dbo.sysssispackages에 저장되므로 더 쉽습니다. 2005의 경우 msdb.dbo.sysdtspackages90을보십시오. 나는이 정보를 꺼내기위한 편리한 질의를 가지고있다. SSIS Package Query. 파일 시스템에 있다면 로컬 상자에기도 할 수 있으며 .dtsx으로 끝나는 모든 파일을 검색하면 도움이됩니다. 그러나 네트워크 파일 공유에서 패키지를 참조 할 수 있으므로 추한 속도로 빠져 나갈 수 있습니다. 일단 찾으면 Visual Studio의 사용자 지정 셸인 BIDS (Business Intelligence Designer Studio)가 필요합니다. SQL Server 2008 (R2)이므로 Visual Studio 2008 셸을 실행해야합니다. 2012 년 SQL Server 릴리스까지 팀은 해당 VS 설치에 묶여있었습니다. SQL Server 설치 미디어를 찾고 거기에서 설치를 수행하십시오.

는 특히 "다음 나에게 데이터베이스가 데이터를 어디에 데이터가 출신으로로드 된 마지막 시간을 표시 할 내가 데이터베이스에 대해 실행할 수있는 T-SQL 명령이 있습니까?"해결하려면 사실, 그렇게 간단합니다. 훌륭한 디자이너가 있다면 테이블에 작업이 발생한 시점을 반영하는 삽입 및 수정 날짜가있을 수 있습니다.

시스템에 데이터를 가져올 수있는 다른 방법은 무엇입니까? 모두. 웹 서비스 나 Windows에서 데이터를 푸시하는 .NET 서비스가있을 수 있습니다. 최신 데이터 파일이 삭제 될 때까지 기다리는 파일 감시자와 같은 WMI 기반 이벤트를 트리거 할 수 있습니다. 기타 등등

+0

인용구 : "그러나 네트워크 파일 공유에서 패키지를 참조 할 수 있으므로 추악해질 수 있습니다." 현재 상황에서도 그렇지만 sp_blitz는 현재 매우 유용합니다. – StackTrace

+0

서버 A의 데이터베이스 백업이 서버 B의 파일 공유로 변경되었습니다. 서버 C는 그런 다음 데이터베이스 작업을 덮어 씁니다 서버 B에 백업 파일을 복원하여 준비 데이터베이스를 생성합니다. 그런 다음 서버 C에서 가져 오기를 사용하여 개발 데이터베이스를 업데이트하는 주간 작업이 있습니다.이 모든 루프에서 dev 데이터베이스에만 액세스 할 수 있습니다. – StackTrace