Amazon RDS for Db2에 대해 알려진 문제 및 제한 - Amazon Relational Database Service

Amazon RDS for Db2에 대해 알려진 문제 및 제한

Amazon RDS for Db2 작업에 대해 알려진 문제 및 제한은 다음과 같습니다.

인증 제한

Amazon RDS는 기본적으로 db2authJCC_ENFORCE_SECMEC로 설정합니다. 그러나 유선을 통해 사용자 ID 및 암호 암호화를 적용하지 않으려면 파라미터 그룹에서 db2auth 파라미터를 CLEAR_TEXT로 변경하여 이 설정을 재정의할 수 있습니다. 자세한 내용은 Amazon RDS에서 DB 파라미터 그룹의 파라미터 수정 단원을 참조하십시오.

울타리가 없는 루틴

RDS for Db2는 울타리가 없는 루틴 생성과 데이터 백업 및 복원을 통한 해당 루틴의 마이그레이션을 지원하지 않습니다. 데이터베이스에 울타리가 없는 루틴이 포함되어 있는지 확인하려면 다음 SQL 명령을 실행합니다.

SELECT 'COUNT:' || count(*) FROM SYSCAT.ROUTINES where fenced='N' and routineschema not in ('SQLJ','SYSCAT','SYSFUN','SYSIBM','SYSIBMADM','SYSPROC','SYSTOOLS')

마이그레이션 중 자동이 아닌 스토리지 테이블스페이스

RDS for Db2는 자동이 아닌 새 스토리지 테이블스페이스 생성을 지원하지 않습니다. 데이터베이스의 일회성 마이그레이션에 기본 복원을 사용하는 경우 RDS for Db2는 자동이 아닌 스토리지 테이블스페이스를 자동 테이블스페이스로 자동 변환한 다음, 데이터베이스를 RDS for Db2로 복원합니다. 일회성 마이그레이션에 대한 자세한 내용은 Linux에서 Amazon RDS for Db2의 Linux로 마이그레이션AIX 또는 Windows에서 Amazon RDS for Db2의 Linux로 마이그레이션 섹션을 참조하세요.

db2_compatibility_vector 파라미터 설정

Amazon RDS를 사용하면 DB 인스턴스를 만들 때 초기 데이터베이스를 만든 다음 연결된 파라미터 그룹에서 파라미터를 수정할 수 있습니다. 그러나 Db2의 경우 파라미터 그룹에서 db2_compatibility_vector 파라미터를 설정하려면 먼저 사용자 지정 파라미터 그룹에서 파라미터를 수정하고 데이터베이스 없이 DB 인스턴스를 만든 다음, rdsadmin.create_database 저장 프로시저를 사용하여 데이터베이스를 만들어야 합니다.

db2_compatibility_vector 파라미터를 설정하는 방법
  1. 사용자 지정 DB 파라미터 그룹을 만듭니다. (기본 파라미터 그룹에서는 파라미터를 수정할 수 없습니다.)

  2. 파라미터를 수정합니다.

  3. DB 인스턴스를 만듭니다.

  4. rdsadmin.create_database 저장 프로시저를 사용하여 데이터베이스를 만듭니다.

  5. 데이터베이스가 포함된 DB 인스턴스와 파라미터 그룹을 연결합니다.

INVALID 패키지가 포함된 데이터베이스 마이그레이션

RESTORE 명령을 사용하여 INVALID 패키지가 포함된 Db2 데이터베이스를 RDS for Db2로 마이그레이션하면 데이터베이스 사용을 시작할 때 문제가 발생할 수 있습니다. INVALID 패키지는 DB 인스턴스 사용자 rdsdb의 권한 부여 설정 및 PUBLIC에서 권한 부여 제거로 인해 문제를 일으킬 수 있습니다. INVALID 패키지로 인해 다음 명령이 실패합니다.

  • db2updv115

  • db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"

RESTORE 명령을 사용하여 데이터베이스를 마이그레이션하기 전에 다음 명령을 실행하여 데이터베이스에 INVALID 패키지가 포함되어 있지 않은지 확인합니다.

db2 "select count(*) from sysibm.sysroutines where valid = 'N'"

명령이 0보다 큰 개수를 반환하는 경우 다음 명령을 직접적으로 호출합니다.

db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"

그런 다음 이전 명령을 직접적으로 호출하여 데이터베이스에 INVALID 패키지가 더 이상 포함되어 있지 않은지 확인합니다.

db2 "select count(*) from sysibm.sysroutines where valid = 'N'"

이제 데이터베이스를 백업하여 RDS for Db2 DB 인스턴스로 복원할 준비가 되었습니다.