[현상]
이기종간 DB링크를 사용하여 두 컬럼을 조회시 ORA-00600: internal error code, arguments: [HO define: Long fetch] 오류 발생
* 특이점: 컬럼을 하나만 조회하면 오류없이 조회 가능
EX)
SELECT A.COL1
A.COL2
FROM 테이블명@DB_LINK명 A
WHERE ~~;
[원인]
https://support.oracle.com/knowledge/Oracle Database Products.2270309_1.html
3rd party tools (PLSQL developer , Toad for oracle)에서 발생할 수 있는 현상
Oracle에서는테이블당 LONG type은 한 컬럼만 생성할 수 있는데
A.COL1, A.COL2 컬럼이 원DB에서는 에서는 VARCHAR2이지만 Oracle에서 조회 시 (desc 테이블명@DB_LINK명) LONG type으로 조회되어
두 컬럼을 동시에 조회 시 3rd party tools에서 에러가 발생한 경우였다
[해결?]
3rd party tools 에서 발생하는 현상으로 sqlplus에서는 정상조회가 가능하다.
조회 tool에대한 변경이 불가할 경우 LONG type을 변경해준다.
위 케이스의 경우 오라클 gateway의 $ORACLE_HOME/hs/init<DSN>.ora 파일 설정변경하니 VARCHAR2로 조회되긴했으나 같은 gateway를 사용하는 다른 DB에서는 똑같이 파리미터를 변경해도 LONG으로 조회되더라..
변경 전> HS_KEEP_REMOTE_COLUMN_SIZE=REMOTE
변경 후> HS_KEEP_REMOTE_COLUMN_SIZE=ALL
* 변경 후 varchar2로 조회 된 환경: Oracle 10.2.5.12 / Gataway 11g / AIX 5.3
. 안된 환경: Oracle 11.2.0.3 / Gateway 11g / Windows 2008
'인프라 > 데이터 베이스' 카테고리의 다른 글
| Oracle 계정 패스워드 만료기간 설정 (0) | 2021.02.14 |
|---|---|
| ORA-01555: snapshot too old: rollback segment number xxx with name "xxx" too small (0) | 2021.02.12 |
| ORA-02020: too many database links in use (0) | 2021.02.06 |
| 02. Oracle SGA (0) | 2021.02.04 |
| Checkpoint not complete (0) | 2021.01.27 |