IBM Cloud Orchestrator, 버전 2.5.0.1

Exception: DB2 SQL error: SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null 문제점 해결

데이터베이스 업데이트 작업 중에 다음과 비슷한 오류가 발생할 수 있습니다. Exception: DB2 SQL error: SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null. 이 오류는 트랜잭션 로그 공간이 갑자기 줄어들거나 활성 트랜잭션의 수가 일시적으로 증가한 경우에 발생할 수 있습니다.

다음은 이 문제에 적용할 수 있는 솔루션입니다.
  1. DB2® UDB 명령행 프로세서(CLP)에서 다음과 같은 DB2 명령을 실행하십시오.
    db2 get snapshot for all on sccm
  2. 데이터베이스에 사용할 수 있는 로그 공간, 데이터베이스에서 사용 중인 로그 공간, 현재 할당된 보조 로그 항목의 값을 확인하십시오. 이러한 항목은 데이터베이스가 사용 가능한 로그 공간보다 낮은 상태에서 실행되고 있음을 나타내야 합니다.
  3. 데이터베이스에 사용할 수 있는 보조 로그 파일의 수를 12개 추가하여 추가 로그 파일 공간을 제공하십시오. DB2 UDB CLP에서 다음 DB2 명령을 실행하십시오.
    db2 update db cfg for sccm using logsecond x 
    여기서 x는 보조 로그 공간의 현재 값에 12를 더한 값입니다.
문제점이 다시 발생하는 경우에는 DB2의 인다우트(Indoubt) 트랜잭션으로 인한 트랜잭션 로그 공간 부족이 원인일 수 있습니다. 인다우트(Indoubt) 트랜잭션은 이전 서버 장애 또는 충돌로 인해 발생할 수 있으며, 결과적으로 트랜잭션이 수행될 때 트랜잭션 로그가 가득 차게 됩니다. DB2 UDB CLP에서 SmartCloud Cost Management 데이터베이스에 연결한 후 다음 명령을 실행하십시오.
db2 list indoubt transactions with prompting
서버 충돌이 발생한 시간과 가까운 시간소인을 갖는 모든 트랜잭션을 롤백하십시오.

관련 문제점

메모리 또는 하드 디스크 공간이 충분하지 않은 경우 다음과 비슷한 메시지가 생성될 수 있습니다.
AUCPE0202E The DBLoad process completed unsuccessfully with the following exception: 
com.ibm.db2.jcc.b.SqlException: Error for batch element #306: DB2 SQL error: 
SQLCODE: -964, SQLSTATE: 57011, SQLERRMC: null. 
솔루션:
  • 추가 메모리 및 하드 디스크 공간이 있는 환경에서 SmartCloud Cost Management를 실행하십시오.
  • Linux, UNIX 및 Windows 데이터베이스를 사용하는 경우 앞에서 설명한 단계를 사용하여 보조 로그 파일의 수를 증가시키십시오.