SQL6048N 메시지

SQL6048N  START 또는 STOP DATABASE MANAGER 처리 중에 통신 오류가 발생했습니다.

설명:
START 또는 STOP DATABASE MANAGER 명령이 추가하려는 새 노드를 포함하여 sqllib/db2nodes.cfg 파일에 정의된 모든 노드와 연결을 설정하려는 중에 TCP/IP 통신 오류가 발생했습니다.

고객으로부터 SQL6048N 관련 문의가 온 적이 있었다.

이 오류메시지는 hostname 과 관련된 오류로 관련된 파일들을 살펴봐야 한다.

확인1) db2 명령어가 정상 수행되는가?

DB2가 운영 중인 상태라 하더라도 “호스트 명”이 변경되는 경우 db2 명령어는 수행되지 못하고 위 에러메시지를 반환한다. DB는 요청된 작업 수행에 있어서 “호스트 명”을 가지고 수행되기 때문에 “인스턴스 구성/생성할 때 사용된 호스트 명”이 바뀌는 경우 db 명령어는 수행되지 못한다.

따라서 db2pd, db2 등의 명령어가 정상 수행되는지 확인해 봐야한다.

 

확인2) /etc/hosts 파일명이 변경되었는가?

hosts 파일에 설정된 호스트 명과 db2set 의 DB2SYSTEM의 값, db2nodes.cfg (인스턴스홈/sqllib/ 하위에 위치) 의 호스트 명이 모두 동일한 지 확인한다.

* (참고) Enterprise Server Edition 이상에서만 db2nodes.cfg 파일이 존재함

문의를 요청한 고객사의 경우 보안 작업으로 hosts 파일의 권한을 변경하면서 생겼던 것으로 확인되었다. (대부분의 unix에서는 755 가 기본 권한이고, 특별히 파일 권한을 변경하는 작업은 없는 편인데 소유자 이외는 접근을 하지 못하도록 권한을 강화했던 것 같다.)

 

호스트 명 관련하여 변경이 되면 db2diag.log 파일에는 다음과 같은 메시지가 기록이 된다.

2011-10-28-07.57.17.335302-240 I70274A383 LEVEL: Error
PID : 2040060 TID : 1 PROC : db2
INSTANCE: DB2 NODE : 000
FUNCTION: DB2 UDB, command line process, clp_start_bp, probe:3
MESSAGE : CLP frontend unable to get REQUEST queue handle

 

참고로 hostname 변경과 관련된 IBM 기술문서를 소개한다.

문서: Changing hostname of the DB2 server

http://www-01.ibm.com/support/docview.wss?uid=swg21258834

 

문서: SQL6048N error on db2start with "CLP frontend unable to get REQUEST queue handle" error

http://www-01.ibm.com/support/docview.wss?uid=swg21569876

 

문서: db2start failing with SQL6048N error

http://www-01.ibm.com/support/docview.wss?uid=swg21578906

 

 db2diag 내용

 

2009-07-30-10.53.46.652901-300 I41527A389         LEVEL: Warning

PID     : 557298               TID  : 1           PROC : db2haicu

INSTANCE: db2                  NODE : 000

EDUID   : 1

FUNCTION: DB2 Common, SQLHA APIs for DB2 HA Infrastructure, sqlhaGetPolicyTypeFromSysFile, probe:400

MESSAGE : No matching instance record ... setting policy to none

DATA #1 : unsigned integer, 4 bytes

0

 

2009-07-30-10.56.04.951966-300 E41917A760         LEVEL: Error

PID     : 557298               TID  : 1           PROC : db2haicu

INSTANCE: db2                  NODE : 000

EDUID   : 1

FUNCTION: DB2 Common, SQLHA APIs for DB2 HA Infrastructure, sqlhaGetObjectState, probe:400

MESSAGE : ECF=0x90000557=-1879046825=ECF_SQLHA_CLUSTER_ERROR

          Error reported from Cluster

DATA #1 : String, 35 bytes

Error during vendor call invocation

DATA #2 : unsigned integer, 4 bytes

6

DATA #3 : String, 5 bytes

tec30

DATA #4 : unsigned integer, 4 bytes

6

DATA #5 : String, 5 bytes

tec30

DATA #6 : unsigned integer, 8 bytes

1

DATA #7 : signed integer, 4 bytes

0

DATA #8 : String, 83 bytes

Line # : 10828---2610-301 The resource class name IBM.AgFileSystem is not defined.

 

2009-07-30-10.56.04.963270-300 E42678A380         LEVEL: Error

PID     : 557298               TID  : 1           PROC : db2haicu

INSTANCE: db2                  NODE : 000

EDUID   : 1

FUNCTION: DB2 Common, SQLHA APIs for DB2 HA Infrastructure, sqlhaGetInfoForClusterNode, probe:700

RETCODE : ECF=0x90000557=-1879046825=ECF_SQLHA_CLUSTER_ERROR

          Error reported from Cluster

 

2009-07-30-10.56.04.984431-300 E43059A435         LEVEL: Error

PID     : 557298               TID  : 1           PROC : db2haicu

INSTANCE: db2                  NODE : 000

EDUID   : 1

FUNCTION: DB2 Common, SQLHA APIs for DB2 HA Infrastructure, sqlhaUIListAllNodesInClus, probe:300

RETCODE : ECF=0x90000557=-1879046825=ECF_SQLHA_CLUSTER_ERROR

          Error reported from Cluster

MESSAGE : Error in retrieving info for node at Cluster.

 

 원인
 

rsct 모듈 중에서 AIX에서 Default 설치되지 않는 storagerm 설치해야 .

 

(주의) prereqSAM 에서는 storagerm 설치가 되어있지 않아도 통과하는 버그가 있음!

 

 조치
 

다음과 같이 모듈이 설치 되고 나서야 제대로 동작함.

 

  rsct.opt.storagerm        2.4.11.0  COMMITTED  RSCT Storage Resource Manager

 

 

1. Primary 서버나 Standby 서버 둘중 아무데서나 TSA를 수정하기 위해서 다음의 환경변수를 설정함

 

export CT_MANAGEMENT_SCOPE=2

 

2. Public Network가 죽었을 때, Private Network가 살아있어서 Takeover가 안되는 경우를 방지하기 위해서 다음과 같이 TSA 옵션을 설정함

 

lsrsrc -Ab IBM.NetworkInterface

 

  • CommGroup 목록 확인

 

chrsrc -s "CommGroup=='???'" IBM.NetworkInterface HeartbeatActivate=0

 

  • ??? : Public CommGroup 제외한 나머지 모든 CommGroup

+ Recent posts