SQL 튜닝의 기본 지식
☞How to Use Indexs ● 인덱스 생성 시기 ● 인덱스 생성 대상 column 선택 ● 결합 인덱스 사용 방법 ● 인덱스 사용을 위한 SQL문 작성법 ♣ When to Create Indexes…
DB Admin Knowhow
☞How to Use Indexs ● 인덱스 생성 시기 ● 인덱스 생성 대상 column 선택 ● 결합 인덱스 사용 방법 ● 인덱스 사용을 위한 SQL문 작성법 ♣ When to Create Indexes…
SQL Tuning CASE [ CASE1: 적절한 인덱스의 사용 ] <SQL> UPDATE TB_CCPIDSCNT SET END_DATE = DECODE (SIGN (( NVL (END_DATE,TO_CHAR (( ADD_MONTHS (TO_DATE (START_DATE,’YYYYMMDD’),36)– 1),’YYYYMMDD’))– :b0)),1, :b0,END_DATE) ,END_ORD_NO =…
1.데이터와 비즈니스 어플리케이션을 잘 알아야 한다. 동일한 정보는 다른 비즈니스 데이터 원천으로부터 검색될 수 있다. 이러한 원천에 익숙해야 한다. 당신은 당신의 데이터베이스 안의 데이터의 크기와 분포를 반드시 알아야…
고가용성을 위한 Gigabit Switch 권장 클러스터링 기반으로 Oracle RAC 를 구축할 때, 시스템간의 데이터 통신을 위해 High speed interconnector 를 Crossover Cable 방식으로 구축운영하면 불안정하기 때문에 이러한 구성 방식으로…
Data Modeling 데이터베이스의 모델링은 몇 가지 단계를 거쳐 정형화된 테이블로 구현되고, 각 테이블은 데이터베이스 설계 단계에서 결정된 관계를 통해서 서로 연관성을 갖는다. 따라서 데이터베이스를 설계한다는 것은 사용자의 요구를 분석하고, 요구에…
RDB라면 아래의 규칙을 따르게 됩니다. ORACLE,MS_SQL,SYBASE .. 등등.. 1) RDBMS의 구성 관계형 데이터베이스 관리 시스템으로서 열과 행으로 이루어진 2차원의 테이블로 구성된다. 열(Column)과 행(Row)의 순서는 논리적으로 중요하지 않으며, 배열의…
정규화 정규화의 정의정규화 작업은 불필요하게 같은 데이터가 반복되어 나타나는 것을 방지하기 위한 작업으로 E-R Diegram의 검증 및 원시데이터의 관계형 테이블 전환시 사용된다. 정규화 작업은 총 6단계 또는 7단계로 구분 될…
optimizer_features_enable 설명 : 최적기 기능을 제어하는 ini.ora 매개변수의 변경을 허용합니다. 영향을 받는 매개변수는 PUSH_JOIN_PREDICATE, FAST_FULL_SCAN_ENABLED, COMPLEX_VIEW_MERGING 및 B_TREE_BITMAP_PLANS입니다. remote_dependencies_mode 설명 : 원격 PL/SQL 내장 프로시저에 대한 종속성을 데이터베이스가…
CONTEXT SIZE & CURSORS 1. Context size 에 관련한 error message .ora-1046 :can’t acquire space to extend context area. .ora-1050 :can’t acquire space to open context area.…
LOCK의 유형 데이타의 concurrency를 보장하기 위해 오라클은 lock과 transaction을 사용한다. Lock은 같은 자원을 access하는 사용자들 사이에 상호간에 해를 끼치는 것을 예방하기 위해서 사용되는 메카니즘이다. Lock의 종류 –…
Cursor Life Cycle 모든 SQL(Select,Update, Delete)은 Cursor를 생성하여 실행됩니다. Pro*C 와 같은 툴을 사용하면 Cursor 의 각 단계를 프로그램에서 제어할 수 있고, 그렇지 않고 SQL*Plus 와 같은 툴을 사용할 경우에는…
– 오라클 프로세스가 Free Buffer 를 찾는 과정 – Database Buffer Cache 최근에 사용된 데이타베이스의 데이타 블록을 저장하고 있는 Database Buffer 영역으로 DBWR(Database Writer Process) 에 의해서 관리된다. Free Buffer는…
Create Table 시 Storage Option 은 다음과 같습니다. 예시) CREATE TABLE TEST( AA VARCHAR2(3), BB NUMBER(5), CC VARCHAR2(10) ) TABLESPACE PRODUCE INITRANS 1 MAXTRANS 4 STORAGE ( …
– Cache Layer Data Block Header 20 Bytes (Fixed) _ Data Block Address _ INC : 소속된 Segment 가 변경될 때마다 증가 (4 bytes) _ SEQ…
Session : 오라클 사용자가 유저프로그램(프로세스)을 이용해서 오라클 인스턴스에 접속(로그인)했을 경우의 연결상태를 세션이라고 한다. 유저가 연결을 종료하거나 유저프로그램을 종료할 때까지 세션은…
이 방법은 백업으로 복구가 불가능 할경우 최대한 마지막 방법 입니다. 오라클 권고 사항은 절대 아닙니다. Data block이나 Index block이 corruption으로 인해 startup이 되지 않거나 어떤 object를 select못할 경우에 다음과 같은…
Oracle9i Online Document에서 New Feature를 조회해 보면 아래와 같이 Bind Variable Peeking에 대해 소개 합니다. Peeking of User-Defined Bind Variables The CBO peeks at the values of user-defined bind variables…
오라클 에서 개발자가 실행하는 SQL문이 재파싱되지 않기 위해서는 반드시 동일한 SQL문이 실행되어야 합니다. 모든 조건은 동일한데 조건절의 상수 값이 틀린 경우 또는 바인드변수의 값이 틀린 경우에도 동일한 SQL문으로 인정되지 않아…
Rollback segment corrupt error message가 발생 했을 경우에 우선 rollback segment에 대한 정보를 알아야 한다. 즉, 어떤 rollback segment에 문제가 발생 했는지를 알기 위해 아래의 event를 사용한다. Init.ora …
col c1 heading “Tablespace|Nnumber” col c2 heading “Tablespace|Name” col c3 heading “Coalescable|Extents” select c.ts# c1,c.name c2,count(*) c3 from sys.fet$ a,sys.fet$ b,sys.ts$ c where a.ts#…
set pagesize 50000 tti “Database growth per month for last year” select to_char(creation_time, ‘RRRR Month’) “Month”, sum(bytes)/1024/1024 “Growth in Meg” from sys.v_$datafile where creation_time >…
1. 덤프 덤프 : 일회성으로 그 순간의 상태정보를 가집니다. 트레이스 : 10046, 10053 등의 이벤트를 걸게 되면 순간의 상태(immediate) 또는 세션이 close될때까지의 정보(trace name context forever)…
clear screen set verify off set pagesize 200 set linesize 110 set embedded off set feedback off col col0 format a25 heading “Sid-Serial” col col1 format a10 heading “UserName” col…
Statspack을 통한 시스템 튜닝 저자 Rich Niemiec Statspack 보고서에 대기 이벤트가 무엇을 의미하며, 이러한 이벤트를 튜닝하는 방법을 확인하십시오. Oracle 유틸리티를 단 두 개만 사용하여 Oracle9i Database 시스템의 성능 문제를 확인…
Statspack를 통한 고급 시스템 튜닝 By Rich Niemiec 데이타베이스 성능 모니터링 시리즈 중 두 번째 편 이전 칼럼에서 언급했던 것처럼, 시스템 성능 문제를 모니터하고 찾기 위해 Oracle9i 유틸리티를 두 개만…