다음을 통해 공유


데이터베이스 복원 - BizTalk Server

데이터베이스 간에 트랜잭션 상태를 일관되게 유지하려면 모든 데이터베이스를 동일한 수준으로 복원해야 합니다. Marked Transactions, Full Backups, and Log Backups를 참조하십시오.

대상 시스템에 서버가 한 대만 있는 경우에는 최신 세트를 제외하고 모든 로그 백업 세트가 복원되었는지 확인해야 합니다. Viewing the History of Restored Backups를 참조하십시오. 로그 백업 세트가 일부 복원되지 않았으며 현재 복원 작업을 실행하는 중이 아닌 경우 복원 작업을 실행합니다. 필요한 경우에는 수동으로 실행합니다. 복원 가능한 미처리 백업 세트가 있는 경우 이러한 백업 세트가 모두 복원될 때까지 처리됩니다.

대상 시스템에 여러 서버가 있는 경우 모든 서버를 동일한 백업 세트로 복원해야 합니다. 각 서버에서 복원 기록을 보고, 복원된 최신 로그 백업 세트가 모든 서버에서 동일한지 확인합니다. 동일하지 않으면 최신 로그 백업 세트를 복원해야 하는 각 서버에서 복원 작업을 수동으로 실행해야 합니다.

모든 서버가 동일한 백업 세트에 있으면 최종 세트를 수동으로 복원할 수 있습니다.

adm_BackupHistory 테이블은 원본 시스템의 로그 전달 프로세스를 위한 중앙 기록점입니다. 수행된 백업 작업은 모두 이 테이블에 기록됩니다. 대상 시스템에 있는 모든 서버는 이 테이블 내용을 읽어 해당 복원 작업을 수행하는 데 필요한 정보를 얻습니다.

시작하기 전에

  • 백업에서 BAM 기본 가져오기 데이터베이스를 복원하는 경우에는 BAM 주 백업보다 오래된 백업을 사용하여 BAM 보관, BAM 별모양 스키마 및 BAM 분석 데이터베이스도 복원해야 합니다. Backing Up and Restoring BAM를 참조하십시오.
  • 원본 데이터베이스에 대한 전체 또는 로그 백업을 백업 BizTalk Server 작업이 배치한 위치에서 이동하는 경우 대상 시스템의 bts_LogShippingDatabases 테이블에 있는 해당 데이터베이스에 대한 연결된 행을 대상 시스템에서 전체/로그 백업 파일을 읽어야 하는 새 위치로 LogFileLocation 또는 DBFileLocation을 설정하여 업데이트해야 합니다. 이 테이블은 bts_ConfigureBtsLogShipping 저장 프로시저를 실행할 때 채워집니다. 기본적으로 이러한 열은 null로 설정되므로 대상 시스템은 adm_BackupHistory 테이블에 저장된 위치에서 백업 파일을 읽어야 합니다.
  • 항상 백업 파일 복사본을 안전한 위치에 보관하세요. 로그 백업이 있더라도 백업 파일 없이는 데이터베이스를 복원할 수 없습니다.

필수 구성 요소

sysadmin SQL Server 역할의 멤버인 계정을 사용하여 SQL Server 로그인합니다.

데이터베이스 복원

  1. 대상 시스템에서 SQL Server Management Studio 열고 SQL Server 연결합니다.

  2. SQL Server 에이전트 확장하고 작업을 확장합니다. 다음을 수행합니다.

    1. BTS 로그 전달 - 백업 기록 가져오기 작업을 마우스 오른쪽 단추로 클릭하고 사용 안함을 선택합니다. 상태가 성공으로 변경됩니다.

    2. BTS 로그 전달 - 데이터베이스 복원 작업을 마우스 오른쪽 단추로 클릭하고 사용 안함을 선택합니다. 상태가 성공으로 변경됩니다.

    3. BTS 로그 전달 - 표시까지 복원 을 마우스 오른쪽 단추로 클릭하고 작업 시작 단계를 선택합니다. 단계 ID 1 을 선택하고 시작을 선택합니다.

      상태 성공으로 변경되면 SQL Server 에이전트 작업 및 BizTalk Server 데이터베이스가 대상 시스템으로 복원됩니다.

    중요

    상태 가 오류이면 메시지 필드의 링크를 선택하여 원인을 판별합니다. 계속하려면 이러한 작업의 상태가 성공이어야 합니다.

  3. SampleUpdateInfo.xml 파일을 편집한 BizTalk Server 명령 프롬프트를 열고 다음으로 이동합니다.

    32비트 컴퓨터: %SystemDrive%\Program Files\Microsoft BizTalk Server <version>\Schema\Restore

    64비트 컴퓨터: %SystemDrive%\Program Files (x86)\Microsoft BizTalk Server <version>\Bins32\Schema\Restore

  4. 명령 프롬프트에 다음을 입력합니다.

    cscript UpdateDatabase.vbs SampleUpdateInfo.xml

    참고

    SQL Server 2016 이상 환경을 사용하는 경우 UpdateDatabase.vbs MSOLEDBSQL을 사용해야 할 수 있습니다. UpdateDatabase.vbs 로 이동합니다 conn.Provider = "SQLOLEDB". SQLOLEDBMSOLEDBSQL으로 변경합니다. 그렇지 않으면 스크립트가 오류 SQL Server: Invalid connection string attribute로 실패할 수 있습니다.

    MSOLEDBSQL 18.x를 다운로드합니다.

    이 스크립트는 다른 데이터베이스 위치에 대한 정보를 저장하는 테이블을 모두 업데이트합니다.

    중요

    • BizTalk 그룹의 서버에서 UpdateDatabase.vbs를 실행합니다.
    • 64비트 컴퓨터에서는 64비트 명령 프롬프트에서 UpdateDatabase.vbs를 실행해야 합니다. 64비트 컴퓨터의 기본 명령 프롬프트는 64비트 명령 프롬프트이며 %SystemDrive%\windows\System32\cmd.exe 있습니다.
    • BizTalk EDI 엔진은 데이터베이스를 복원할 때 SampleUpdateInfo.xml 자체 수정이 필요하지 않습니다. BizTalkDTADb 데이터베이스에 연결하여 EDI 테이블에 액세스합니다.
  5. 편집된 SampleUpdateInfo.xml 파일을 이 BizTalk 그룹의 BizTalk Server 실행하는 모든 컴퓨터의 다음 폴더에 복사합니다.

    32비트 컴퓨터: 다음으로 복사 %SystemDrive%\Program Files\Microsoft BizTalk Server <version>\Schema\Restore

    64비트 컴퓨터: 다음으로 복사 %SystemDrive%\Program Files (x86)\Microsoft BizTalk Server <version>\Bins32\Schema\Restore

  6. BizTalk Server 그룹의 컴퓨터에서 명령 프롬프트를 열고 다음으로 이동합니다.

    32비트 컴퓨터: %SystemDrive%\Program Files\Microsoft BizTalk Server <version>\Schema\Restore

    64비트 컴퓨터: %SystemDrive%\Program Files (x86)Microsoft BizTalk Server <version>\Bins32\Schema\Restore

  7. 명령 프롬프트에 다음을 입력합니다.

    cscript UpdateRegistry.vbs SampleUpdateInfo.xml

    이 스크립트는 다른 데이터베이스 위치에 대한 정보를 저장하는 레지스트리 항목을 모두 업데이트합니다.

    중요

    • BizTalk 그룹의 모든 서버에서 UpdateRegistry.vbs를 실행합니다.
    • 64비트 컴퓨터에서는 64비트 명령 프롬프트에서 UpdateRegistry.vbs를 실행해야 합니다. 64비트 컴퓨터의 기본 명령 프롬프트는 64비트 명령 프롬프트이고 %SystemDrive%\windows\System32\cmd.exe에 있습니다.
  8. 모든 BizTalk Server 서비스를 다시 시작합니다. How to Start, Stop, Pause, Resume, or Restart BizTalk Server Services를 참조하십시오.

  9. 데이터베이스를 복원한 후 다음과 같이 WMI(Windows Management Instrumentation) 서비스를 다시 시작합니다.

    1. services.msc를 엽니다.

    2. Windows Management Instrumentation을 마우스 오른쪽 단추로 클릭한 다음 다시 시작을 선택합니다.

  10. BizTalk Server 관리를 엽니다. 다음을 수행합니다.

    1. BizTalk 그룹 을 마우스 오른쪽 단추로 클릭하고 제거를 선택합니다.

    2. BizTalk Server 관리 를 마우스 오른쪽 단추로 클릭하고 기존 그룹에 연결을 선택합니다.

    3. SQL Server 이름에서 BizTalk Management 데이터베이스를 호스트하는 SQL Server 인스턴스의 이름을 선택합니다. SQL Server instance 선택하면 BizTalk Server 해당 컴퓨터에서 BizTalk Server 데이터베이스를 자동으로 검색합니다.

    4. 데이터베이스 이름에서 BizTalk Management 데이터베이스(기본값은BizTalkMgmtDb )를 선택한 다음 확인을 선택합니다.

      BizTalk Server 관리 콘솔은 BizTalk 그룹을 관리 콘솔에 추가합니다.

      이제 BizTalk Server 복원되어 실행 중이어야 합니다. 다음으로 백업 BizTalk Server 작업을 구성하여 새 대상 서버에 백업 쓰기를 시작합니다. 또한 새 대상 시스템을 다시 구성해야 합니다.

중요

  • 규칙 엔진을 사용하는 경우 데이터베이스를 복원한 후 BizTalk Server 그룹의 모든 서버에서 규칙 엔진 업데이트 서비스를 다시 시작해야 합니다. How to Start, Stop, Pause, Resume, or Restart BizTalk Server Services를 참조하십시오.
  • BAM을 사용하는 경우 이제 BAM 데이터베이스를 복원할 때입니다. Backing Up and Restoring BAM를 참조하십시오.
  • 데이터베이스를 이동하고 BizTalk EDI 또는 RosettaNet 가속기를 사용하는 경우 BizTalk 데이터베이스에 대해 일부 SQL 포트가 설정될 수 있습니다. 바인딩을 내보내고, 이전 데이터베이스 링크를 검색하고, 그에 따라 데이터베이스 링크를 바꿉니다.

다음 단계

BAM 백업 및 복원

참고 항목

Backup BizTalk Server 작업 구성
로그 전달에 대한 대상 시스템 구성