2011-09-21 5 views
0

그래서 두 개의 서버가 있습니다. SER1, SER2. SER1은 데이터를 복사하여 SER2에 넣어야하는 곳입니다.SSIS : 두 서버 통합

또한 내가 실행 한 후 SER1의 다른 테이블에 원하는 결과를 다시 배치해야 SER2에 몇 저장 발동 있습니다.

이제 두 개의 저장된 procs가 필요합니다. 1. 기본 데이터를 SER1에서 SER2로 복사하고 다른 데이터를 SER2에서 SER1로 모두 복사합니다.

질문 :

  1. 하는 서버에서 나는이 procs 저장을해야합니까?
  2. SSIS 패키지가 SER1에서 SER2로 데이터를 복사 할 수 있도록 모든 SP를 실행할 수있는 SSIS 패키지를 만들어야합니까? (나는 링크 된 서버가 없다)

답변

2

예 SSIS에 연결된 서버가 없어도 저장된 procs를 데이터 원본으로 실행할 수 있습니다. 그러나 저장된 proc에서는 임시 테이블을 사용할 수 없습니다. 파생 테이블이나 CTE를 사용하여이 작업을 수행했습니다. proc은 단지 action proc가 아닌 select 여야합니다.

proc을 SSMS에서 실행할 수있는 위치에두고 싶습니다. 서버 A, 데이터베이스 B의 테이블을 참조하는 경우 SO가 필요합니다.

은 SSIS에서 당신은 당신이 원본 또는 대상 중 하나로 사용하는 beable O 할 각 데이터베이스에 대한 연결을 만들 수 있습니다.

그런 다음 데이터 흐름을 만들고 OLE DB 원본 연결의 소스 연결로 실행하려는 시저가 포함 된 데이터베이스를 사용합니다. 데이터 액세스 모드를 SQL 명령으로 설정하고 exec 명령을 실행하여 SQL 명령 텍스트를 실행하십시오. 입력 매개 변수가 필요하면 매개 변수 단추를 클릭하십시오. 이제 열 탭을 확인하십시오. 열이 나타나지 않으면 저장 프로 시저가 연결로 작동하도록 조정해야합니다.

는 그런 다음 대상 연결 등의 데이터를 넣을 데이터베이스에 대한 연결을 선택합니다. 어떤 테이블을 만들고 매핑을하는지 알려줍니다.

+0

답변 해 주셔서 감사합니다. 그래서 제어 흐름에서 수행해야 할 작업과 데이터 흐름에서 내가 필요로하는 변환은 무엇입니까? 또한 하나의 작업을 다른 작업과 연결하는 데 도움을주십시오. 감사합니다 –

+0

수행해야 할 작업은 수행중인 작업과 데이터를 변환해야하는 양에 따라 다릅니다. 이런 사이트에서 나는 그런 대답을 할 수 없습니다. – HLGEM

0

먼저 서버가 연결되어 있어야한다. "연결된 서버가 없다"는 의미를 이해하지 못한다. 링크 된 서버를 만들어야한다. 당신이 두 개의 서버 1과 2가 있고 다음 서버 1 논리적으로 저장 프로 시저를 포함해야 서버 2 서버 1에서 데이터를 복사 할 경우 1의 경우

는) 당신은 논리에 따라 저장 프로 시저를 작성합니다. 이런 식으로해야합니까, 아니 절대적으로, 그것은 서버 2에있을 수 있지만 논리적으로 이것에 대해 생각하십시오. 2의

) 당신은 연결된 서버가 필요합니다, 어떻게 다른 사람이 ServerName.DbName.Owner.Table을 실행할 수 있습니까?

+0

SSIS 패키지를 만들어 두 서버에 테이블을 자동으로 복사하는 패키지의 저장 프로 시저를 실행할 수 있습니까? –