본문 바로가기

Oracle242

ORA-04031 : unable to allocate 120 bytes of shared memory 원인 : 해당 에러는 Oracle DB에 설정된 메모리보다 더 많은 메모리를 할당하려고 할 때 발생하는 에러입니다. 저의 케이스의 경우에는 Stream pool Size와 관련된 메모리 할당에서 에러가 발생하였습니다. 아래는 alert log에 찍힌 에러 원본입니다. ORA-04031: unable to allocate 120 bytes of shared memory ("streams pool","unknown object","streams pool","kod objects") 조치 : DB 재기동. 해당 에러가 발생하면 SQL로 작업하는게 불가능해지기 때문에 DB재기동하여 메모리를 flush하여 다시 할당 하는방법 밖에 없습니다. 하지만 추후에 이런 에러를 발생하는 것을 방지하는 방법은 있습니다. 그것.. 2021. 1. 19.
Tibero to Oracle DBLINK 아키텍쳐(Oracle 리스너 방식) 이번에는 오라클 리스너를 활용한 티베로에서 DBLINK를 이용하여 Oracle의 정보를 주고 받는 방식에 대한 그림입니다. 마찬가지로 Oracle GateWay프로그램이 가장 중요합니다. 1.SQL 실행 - 티베로DB에서 DBLINK문 쿼리를 실행합니다(ex select sysdate from dual@XE;) 2.쿼리전달 - 티베로 프로그램 중하나인 gw4orcl을 이용하여 쿼리를 전달합니다. tbdsn.tbr에는 tbgw의 port번호와 oracleGateWay listener의 tnsnames.ora의 alias명이 입력되어야 합니다 3.쿼리수행 - Oracle DB접속하여 쿼리를 수행합니다. 4.결과 전달 5.결과 확인 서버간의 통신과 port 설정, 방화벽 등 고려해야할 사항이 많습니다. 하지만.. 2021. 1. 11.
Oracle to Tibero DB LINK 아키텍쳐(GateWay 방식) 제가 테스트 후 정리하면서 만든 그림입니다. Oracle에서 이기종의 DB에 접근하여 데이터를 DB Link로 가져오는 방식은 티베로 뿐만 아니라 다른 DB들도 비슷한 원리로 작동된다고 할 수 있을것 같습니다. 그래서 원리 이해만 잘하면 다른 DB에서도 적용할 수 있을것 같습니다. 핵심은 Oracle GateWay프로그램입니다. GateWay 프로그램을 통해서 Oracle 서버와 통신을 하며 DB link를 수행하기 때문입니다. 제가 그림에서 화살표로 접근하는 파일은 수정이 필요한 파일들이며, 각 파일들이 그다음 화살표로 가는 파일(or DB)에 대한 정보가 제대로 입력이 되어 있어야합니다. 순서를 설명하면 1.SQL 실행 - Client단에서 쿼리를 실행합니다 (ex select sysdate from.. 2021. 1. 10.
v$locked_object - 락걸린 세션 확인 락걸린 세션에 대해서 확인할 수 있는 뷰입니다. 쿼리 검색시 아래와 같이 나타납니다. SQL> select * from v$locked_object; XIDUSN XIDSLOT XIDSQN OBJECT_ID SESSION_ID ORACLE_USERNAME OS_USER_NAME PROCESS LOCKED_MODE ----------- ----------- ----------- ----------- ----------- ------------------------------ ------------------------------ ------------------------ ----------- 1 16 6843 21527 29 TEST oracle 11470 3 1 16 6843 21526 29 TEST .. 2021. 1. 7.