본문 바로가기

Oracle242

IMPDP 시 스키마에 이미 같은 이름의 Table이 존재한다면?(TABLE_EXISTS_ACTION) IMPDP시 사용할 수 있는 옵션 중 하나에 대해서 포스팅하겠습니다. impdp 명령어 뒤에 TABLE_EXISTS_ACTION=[값]을 추가하여 사용할 수 있습니다. 사용할 수 있는 옵션은 아래와 같습니다. TABLE_EXISTS_ACTION=[SKIP | APPEND | TRUNCATE | REPLACE] -SKIP : default로써 impdp시 해당 Table 존재시, 다음 Object로 이동합니다. 만약 CONTENT옵션이 DATA_ONLY옵션으로 설정되어 있으면 SKIP을 사용할 수 없습니다. - APPEND : IMPDP시 해당 Table 존재시 이미 존재하는 row값은 놔두고 변경된 값만 impdp를 수행합니다. - TRUNCATE : 존재하는 row를 모두 삭제(delete)한 후 im.. 2021. 2. 24.
Index rebuild 인덱스란 테이블의 조회성능을 향상시켜주는 DB의 중요한 Object입니다. 인덱스를 생성 후 사용하다보면 테이블에도 데이터가 들어가는 경우가 분명히 있을 것이고, 테이블에 데이터가 삽입되면 인덱스에도 데이터를 추가해야 합니다. 인덱스에 데이터가 추가되는 과정에서 depth가 깊어지거나, leaf block이 많아져 데이터 조회시 많은 block을 조회(chaining row)해야 한다면, 조회 성능을 향상시켜주기 위해서 사용하는 index가 성능 저하의 원인이 될 수도 있다는 것입니다. Index rebuild나 COALESCE를 수행하여 해결할 수 있습니다. REBUILD Rebuild가 필요한 상황 - 기존 인덱스를 다른 테이블스페이스로 이동해야 할 경우 - 인덱스가 삭제된 엔트리(데이터)를 많이 포.. 2021. 2. 16.
[RAC] 12.2 CRS Process 강제로 kill 하고 복구방법 어느 한 외국사이트에서 포스팅한 글을 보고 직접 테스트해본 후 정리했습니다. 그 사이트에서는 11.2 RAC를 기준으로 os에서 CRS process들을 강제로 kill하고 어떻게 되는지 테스트해보고 결과를 정리하였는데, 저는 12.2 RAC를 기준으로 테스트해 보았습니다. Process Kill하기 방법 : OS상에서 ps -ef 명령어로 프로세스 number 확인 후 kill -9 명령어로 삭제 초기화면 [root@rac1 ~]# crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details --------------.. 2021. 2. 8.
dba_tables 과 dba_segments의 차이 reorg시 dba_tables 과 dba_segments에 둘다 blocks라는 컬럼이 존재하고 그것을 토대로 reorg 전 후 block수를 비교하게되는데요. 사이트에 따라 dba_tables를 조회할 때도 있고, dba_segments를 조회할 때도 있어서 둘의 차이가 어떤것이 있을까 궁금증이 생겼습니다. reorg 시 물리적인 object block의 변화를 체크하기 위해서는 dba_tables가 아니라 dba_segments 내의 blocks를 조회하여 비교해야 한다는 사실을 파악했습니다. 검색해본 결과 외국 사이트에 정리를 잘해놓은 사이트가 있어서 한글로 번역하면서 정리해보도록 하겠습니다. dba_tables는 논리적인 구조를 보여주고, dba_segments는 물리적인 구조(데이터파일과 같은.. 2021. 2. 5.