Jazz Team Server 업그레이드 이후 Jazz 저장소 마이그레이션

저장소 마이그레이션은 데이터베이스 컨텐츠의 형식을 변환하는 프로세스입니다. Jazz™ Team Server를 버전 X에서 스키마가 변경된 버전 Y로 업그레이드할 때 저장소 마이그레이션이 필요합니다.
시작하기 전에
Jazz Team Server 버전 간에 스키마가 변경되면 데이터 마이그레이션을 수행해야 합니다. Jazz Team Server 버전 X 및 버전 Y의 압축 파일을 모두 푼 상태여야 합니다.
이 태스크 정보
일반적으로 데이터 마이그레이션은 다음 두 단계의 프로세스입니다.

저장소 마이그레이션 다이어그램

내보내기 및 가져오기 조작에 repotools 애플리케이션을 사용할 수 있습니다.
주: 저장소를 마이그레이션할 때 Jazz Team Server는 중지된 상태여야 합니다. 시스템의 구성, 운영 체제, 데이터베이스 등에 따라 마이그레이션하는 데 오랜 시간이 걸릴 수도 있습니다. 그러므로 작동 중지를 적절히 스케줄하십시오.

전체 텍스트 디렉토리 마이그레이션

Jazz Team Server는 전체 텍스트 조회의 처리에 필요한 모든 데이터가 저장되어 있는 데이터베이스 외부의 디렉토리를 관리합니다. 해당 디렉토리의 위치는 teamserver.properties 파일의 com.ibm.team.fulltext.indexLocation 특성에 구성되어 있습니다. 색인에 사용한 이전 디렉토리를 사용하여 데이터베이스를 마이그레이션할 때는 -rebuildTextIndices 저장소 도구에 사용된 위치가 서버에서 사용하는 위치와 일치하도록 확인해야 합니다. 서버를 시작하거나 -rebuildTextIndices 명령을 실행할 때는 전체 텍스트 디렉토리 위치의 절대 경로가 로그 파일에 기록됩니다. 서버 로그 파일과 repotools_rebuildTextIndicies 로그를 확인하여 두 디렉토리를 비교할 수 있습니다.
팁: teamserver.properties 파일에 구성된 디렉토리가 상대 경로이면 로그 파일에 경고가 기록됩니다. 이 특성을 절대 디렉토리 경로로 구성하는 것이 좋습니다.
전체 텍스트 색인 작성에 대한 자세한 정보는 -rebuildTextIndices의 내용을 참조하십시오.

Jazz Team Server 마이그레이션은 마이그레이션할 데이터의 크기에 따라 오랜 시간이 걸릴 수도 있는 매우 집중적인 프로세스입니다. 다음은 일반적인 장애가 발생하지 않도록 주의해서 확인해야 할 점검 목록입니다.

운영 체제:
  • Windows에서 관련된 모든 디스크에 "디스크 쓰기 캐싱"을 사용하고 있는지 확인합니다.
  • Windows에서 "Windows 색인 서비스"를 사용하지 않도록 설정합니다.
  • 임시 디렉토리, 데이터베이스 및 .tar 파일이 가장 빠른 드라이브(이상적으로 striped/RAID/10 디스크)에 있는지 확인합니다.
  • Linux(DB2용)에서 다음 DB2 관리 주제에 따라 커널을 올바르게 조정했는지 확인합니다. http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/topic/com.ibm.db2.luw.qb.server.doc/doc/t0008238.html
Jazz Team Server 설정:
  • 가장 빠른 디스크에 액세스하도록 다음 특성(teamserver.properties에 있음)을 설정합니다.
    com.ibm.team.repository.tmpdir
    com.ibm.team.scm.vcs.tmpdir
    com.ibm.team.scm.tmpdir
    com.ibm.team.fulltext.indexLocation
DB2:
  • DB2는 기본적으로 필요한 만큼 버퍼 풀 크기를 늘리려고 합니다. 이러한 기능을 사용 불가능하게 하지 않는 한 DB2는 출하 시 상태로 작동합니다.
  • 버퍼 풀을 확인하려면 다음을 수행합니다.
    1. 명령 프롬프트에 다음을 입력하여 가져올 Jazz 데이터베이스에 연결합니다.
      db2 connect to <databaseName>
    2. 그런 후, 다음 명령을 실행합니다.
      db2 "select bufferpoolid, bpname from syscat.bufferpools"
      이렇게 하면 버퍼 풀 ID가 다음 형식으로 출력됩니다.
      BUFFERPOOLID BPNAME
      ------------ ----------------------------------
                 1 IBMDEFAULTBP
      
        1 record(s) selected.
    3. 위 예제에서 버퍼 풀 ID는 1입니다. 그런 다음, 다음 명령을 실행합니다.
      db2mtrk -d
      이렇게 하면 다음과 유사한 데이터가 출력됩니다.
      Tracking Memory on: 2009/06/04 at 22:19:17
      
      Memory for database: <databaseName>
         utilh       pckcacheh   other       catcacheh   bph (1)     bph (S32K)
         64.0K       384.0K      128.0K      128.0K      95.4M       832.0K
      
         bph (S16K)  bph (S8K)   bph (S4K)   shsorth     lockh       dbh
         576.0K      448.0K      384.0K      64.0K       2.5M        20.8M
      
         apph (269)  apph (268)  apph (267)  apph (266)  apph (265)  apph (262)
         64.0K       64.0K       64.0K       64.0K       64.0K       64.0K
      
         appshrh
         128.0K
      굵은체 출력은 데이터베이스에 할당된 버퍼 풀 크기를 나타냅니다.
Oracle:
  • 휴지통(recycle bin)을 사용하지 않도록 설정합니다. 휴지통은 삭제되는 모든 요소를 추적하는 기능으로 디스크를 가득 채워 문제를 일으킬 수 있습니다. sqlplus에서 다음 명령을 실행합니다.
    "ALTER SYSTEM SET RECYCLEBIN" = 'OFF' 
    "PURGE RECYCLEBIN"
  • 지난 메소드의 런타임을 추적하는 통계 기록 보존을 사용하지 않도록 설정합니다.
    "exec dbms_stats.ALTER_STATS_HISTORY_RETENTION (0)"
    "exec dbms_stats.PURGE_STATS ( current_timestamp )"
  • Oracle 테이블스페이스 단일 파일에만 해당하도록 확인합니다.

마이그레이션을 시작하려면 다음을 수행하십시오.

  1. Jazz Team Server 버전 X를 중지합니다. Jazz Team Server를 중지하려면 [installDir]/jazz/server에 패키지로 들어 있는 server.shutdown.sh(Linux) 또는 server.shutdown.bat(Windows)를 실행합니다.
  2. Jazz 저장소를 백업합니다. 백업은 마이그레이션이 잘못될 경우에 대비한 예방적 조치일 뿐입니다.
    1. Derby의 경우, 전체 데이터베이스 디렉토리의 아카이브 사본을 작성합니다.
    2. DB2의 경우, DB2 백업 명령을 사용하여 지정된 대상 디렉토리에 날짜 및 시간 정보를 포함한 데이터베이스 아카이브 파일을 생성합니다.
  3. 전체 텍스트 색인을 백업합니다. 전체 텍스트 색인의 위치는 teamserver.properties 파일의 com.ibm.team.fulltext.indexLocation 특성에 지정되어 있습니다.
  4. repotools를 실행하여 저장소에서 데이터를 내보냅니다. 스크립트 repotools.sh(Linux) 및 repotools.bat(Windows)가 [installDir]/jazz/server 디렉토리에 패키지로 들어 있습니다.

    예제: repotools -export toFile=./file_name.tar

    주: 로그 정보와 오류 메시지가 콘솔과 로그 파일에 표시됩니다. 로그 파일에는 내보낸 항목의 수, 항목을 내보낸 시간, 오류 및 기타 유용한 정보에 대한 디버그 정보가 들어 있습니다. 기본적으로 로그 파일은 repotools 스크립트와 동일한 디렉토리에 작성됩니다. logFile 매개변수를 사용하여 로그 파일의 위치를 변경할 수 있습니다.
    이제 저장소의 컨텐츠를 TAR 파일로 내보냈습니다.
  5. teamserver.properties 파일을 버전 X의 [installDir]/jazz/server에서 버전 Y의 [installDir]/jazz/server로 복사합니다.
  6. 버전 Y에서 repotools를 실행하여 TAR 파일의 데이터를 저장소로 가져옵니다.
    예제: repotools -import fromFile=./file_name.tar
    중요사항: Derby 데이터베이스가 아닌 경우 가져오기 도구를 실행하기 전에 새 데이터베이스를 작성해야 합니다.
    주: -import 옵션은 가져온 항목과 건너뛴 항목, 가져오기 오류에 대한 정보를 로깅합니다.
다음에 수행할 작업
이제 Jazz Team Server 버전 Y를 시작할 수 있습니다.

피드백

도움이 되셨습니까? Jazz.net의 포럼에 의견 남기기 또는 버그 제출에서 피드백을 제공할 수 있습니다(등록 필요).