본문 바로가기

DB

(90)
모든 DML을 INSERT로 변경하자 아직도 수많은 기업에서 성능 최적화를 수행하면 서도 주어진 SQL만을 그대로 최적화하려고 하는 경우가 많다. 물론 주어진 SQL의 튜닝을 통해 성능을 최적화할 수 있는 것은 분명하다. 하지만, 우리가 생각을 전환하여 기존이 방식과 다른 방식으로 수행하여 엄청난 성능 향상을 기대할 수 있는 경우도 많다. 대용량 데이터베이스로 변하고 있는 시점에서 성능 최적화를 위해 사용자 생각의 전환은 반드시 필요한 요소다. 권순용 | kwontra@hanmail.net 우리 주위에는 프로젝트의 성능을 향상시키기 위해 SQL 최적화에 전념하는 사이트들이 많이 있을 것이다. SQL 최적화를 통해 크게 성능 향상을 기대할 수 있는 것은 사실이다. 예전에는 성능 저하가 발생하는 경우 SQL 튜닝 보다도 해당 시스템의 CPU 또..
Oracle 노하우 및 팁 출처: http://www.oracleclub.com/article/12247 ====================================================================== ORA-01654 : INDEX SEGMENT ====================================================================== 01654, 00000, 'unable to extend index %s.%s by %s in tablespace %s' 예) unable to extend index owner.object by 40964 in tablespace INDEX; 1. tablespace에 남아 있는 공간 중 가장 큰 연속된 공간의 사이즈를 구합니다...
고성능 Oracle JDBC 프로그래밍 고성능 Oracle JDBC 프로그래밍 연결 및 명령문 풀링 기능을 이용하여 Oracle 기반의 JDBC 프로그램 성능을 개선하는 방법을 학습합니다. 연결 풀링 및 명령문 풀링과 같은 풀링 기능을 사용하면 데이터베이스 집약적인 애플리케이션의 성능을 크게 개선할 수 있습니다. 풀링 기능을 사용하지 않을 경우, 처음부터 객체를 새로 만들어야 하므로 시간과 리소스가 많이 소모되지만 풀링을 사용하면 객체를 다시 사용할 수 있기 때문입니다. 애플리케이션에서 사용한 물리적 데이터베이스 연결을 나타내는 데이터베이스 연결 객체를 다시 사용할 경우, 성능을 크게 개선시킬 수 있습니다. 단, 해당 애플리케이션은 동일한 매개 변수를 사용하여 연결을 수시로 재설정하면서 데이터베이스와 끊임없이 상호 작용해야 합니다. 반면, 애..
ORACLE Instance 인스턴스명 - Can not allocate log, archival required 즉 오라클DB가 순간적으로 매우 비즈했기 떄문이다. DB에 큰 영향은 주지 않는다. 우선 개념부터 파악해보자. 아래내용은 발취 내용입니다. 리두로그 란....... 리두로그(redo.log)파일은 아카이브파일이다..라고 할 수 있다. (즉, 아카이브파일은 오라클의 리두로그파일을 그대로 복사해두는 파일이다.) 리두로그파일은 보통 3개정도이고 순차적으로 순환하면서 사용되고 나중에 또 사용된다. 가 - 나 - 다.. 가 - 나 - 다.. 이런 순서로 덮어씌어지게 된다. 이때 기존내용을 보관할 필요가 있을때 사용하는 것이 아카이브모드고 이때 생성되는 파일이 아카이브파일이다. (아카이브파일의 이름이나 저장위치는 initSID.ora에서 설정.) 이 파일은 단순히 리두로그파일을 복사한것에 불과 하지만.. 마음대로 ..
Oracle Backup > 수정일 : 2002. 11. 15 2005. 01. 25 : 아카이브 로그 보기 추가 #### 고려 사항 1. 백업 모드 - Archive Mode - Noarchive Mode 2. 저장 장치 - Disk 사용 - 백업 장치 사용 3. 백업 주기 #### Archive Mode - 데이터베이스가 아카이브 모드 상태에서 오픈되어 있는 경우에는 온라인 백업이 가능한 상태이며 따라서 문제 발생시 처리중인 트랜잭션 중 Commit 된 부분들은 전부 복구가 가능하다. #### Archive 백업 순서 - 데이터베이스의 아카이브 모드가 설정되어 있는지 해제되어 있는지를 확인한다. - 아카이브 모드를 설정한다. - 아카이브 관련 초기화 변수들이 정확한지 확인한다. - 아카이빙을 수행한다. - 아카이브 로그 파일..
오라클에서 통계정보를 생성하는 이유는? 오라클에서 통계정보를 생성하는 이유는 오라클에있는 옵티마이저기능을 최적화하기 위함입니다. 이 옵티마이저가 최적화 되기 위해서는 기초데이터가 되는것이 통계정보 입니다. ANALYZE란 명령어를 통해서 인덱스,테이블, 클러스터의 통계정보를 생성할 수 있습니다. ANALYZE를 하기되면 통계정보를 생성후 데이터 사전에 저장합니다. 통계정보를 생성하지 않으면 인덱스가 있더라도 그리많은 효과를 보지 못 할수도 있습니다. 제대로된 인덱스를 찾지 못하기 떄문입니다. 왜냐하면 옵티마이저가 찾을 기초데이터가 없기 때문입니다. 그래서 ALALYZE를 통해서 통계정보를 생성해야만 최적화된 인덱스를 잡아내서 최대한의 효과를 볼 수 있기 떄문입니다. COSE BASE로 OPTIMIZER가 운영중인 환경에서는 처음 생성 후 AN..
ORA-00600: internal error code, arguments: [12333] Applies to: Oracle Server - Enterprise Edition - Version: 8.1.7.4 to 10.2.0.3 Information in this document applies to any platform. Purpose The purpose of this Note is to explain bugs filed for ORA-00600 [12333] error against specific Oracle database versions, and explain the symptoms of each bug, workarounds if any and references the patch available at the time this article was written. Scope T..
REDO 와 UNDO를 차이점에서 바라본 관점 1. REDO - 모든 변경사항을 REDO로그에 기록한다. - REDO로그는 Online REDO와 Archuved REDO로그로 구성된다. Online REDO 로그는 2개 이상의 파일로 구성되어 있어, 현재 사용중인 로그 파일이 꽉 차면 다음 로그 파일로 스위칭 이때 꽉 차여진 로그 파일을 다른 위치로 백업래 준 파일을 Archived REDO로그 이다. - 목적 3가지 - 데이타 복구 : Archived REDO이용 - 버퍼캐시복구 : 인스턴스가 비정상적종료시 그떄까지 작업내용이 잃어버리게 됨. 재기동 되면 Online REDO로그에 저장된 기록사항을 읽어와 마지막 채크포인트와 사고발생직전까지 수행한 트랜젹션을 재현 - Fast Commit(IO속도 차 극복) : 데이타 버퍼 블록을 디스크에 기록하..