작성자: haisins

오라클 DBA 박용석 입니다. haisins@gmail.com 으로 문의 주세요.

Data Modeling의 기초

Data Modeling 데이터베이스의 모델링은 몇 가지 단계를 거쳐 정형화된 테이블로 구현되고, 각 테이블은 데이터베이스 설계 단계에서 결정된 관계를 통해서 서로 연관성을 갖는다. 따라서 데이터베이스를 설계한다는 것은 사용자의 요구를 분석하고, 요구에…

정규화 ( Normalization )

정규화 정규화의 정의정규화 작업은 불필요하게 같은 데이터가 반복되어 나타나는 것을 방지하기 위한 작업으로 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 내장 프로시저에 대한 종속성을 데이터베이스가…

Oracle LOCK의 유형

LOCK의 유형    데이타의 concurrency를 보장하기 위해 오라클은 lock과 transaction을 사용한다.    Lock은 같은 자원을 access하는 사용자들 사이에 상호간에 해를 끼치는 것을 예방하기 위해서 사용되는 메카니즘이다.    Lock의 종류       –…

Create Table 테이블 생성문의 Storage Option 설명

Create Table 시 Storage Option 은 다음과 같습니다.  예시) CREATE  TABLE  TEST(         AA             VARCHAR2(3),         BB             NUMBER(5),         CC             VARCHAR2(10) ) TABLESPACE     PRODUCE INITRANS       1 MAXTRANS       4 STORAGE (     …

Session vs Connection

Session     : 오라클 사용자가 유저프로그램(프로세스)을 이용해서 오라클 인스턴스에 접속(로그인)했을 경우의 연결상태를 세션이라고 한다.                  유저가 연결을 종료하거나 유저프로그램을 종료할 때까지 세션은…

cursor_sharing 파라미터

오라클 에서 개발자가 실행하는 SQL문이 재파싱되지 않기 위해서는 반드시 동일한 SQL문이 실행되어야 합니다. 모든 조건은 동일한데 조건절의 상수 값이 틀린 경우 또는 바인드변수의 값이 틀린 경우에도 동일한 SQL문으로 인정되지 않아…

Statspack을 통한 시스템 튜닝

Statspack을 통한 시스템 튜닝 저자 Rich Niemiec   Statspack 보고서에 대기 이벤트가 무엇을 의미하며, 이러한 이벤트를 튜닝하는 방법을 확인하십시오. Oracle 유틸리티를 단 두 개만 사용하여 Oracle9i Database 시스템의 성능 문제를 확인…

oracle lock 이란?

Latch가 SGA영역을 보호 한다면 Lock은 데이터 베이스를 보호 한다고 보면 된다.  Lock은 Latch와 다르게 복잡한 메카니즘을 통하여 관리가 된다. 또, Lock은 관리 방법에 따라서 일반 Lock과 Enqueue Lock으로 분류를 할…

Oracle Latch 란??

오라클에서 Latch는 Lock과 함께 잠금에 사용되는 장치이다. 그러나 Lock과 틀린것은 latch는 Lock보다 가볍고 SGA 내부의 공유 데이터에 대한 베타적인 잠금을 보장하여 (9i 이상에서는 cache buffer chains Latch는 읽기 전용일 경우…

SYSAUX tablespace 줄이는 방법

sysaux tablespace는 10g에서 새로 추가된 system default tablespace의 하나로 기존에 system tablespace에   저장되던 각종 ORACLE OPTION들의 schema가 저장되며 10g의 new feature인 AWR(auto workload repository) 데이터들이 저장되는 tablespace 입니다.   awr정보는…

Dictionary Statistics 통계 생성방법

Simplify Statistics 통계치 수집 방법   Oracle Database 10g부터는 최상의 성능을 얻기 위해서, fixed 테이블과 dictionary 테이블에 대한 통계치를 수집해야 한다.  fixed 테이블에 대한 통계수집은 전형적인 시스템 부하(workload) 상태에서 한번만…

PGA 사용량 확인 하는 쿼리

PGA를 사용하는 사용량 확인은 간단히 v$sesstat 뷰와 v$statname 뷰를 조인하면 된다.   자신이 사용하는 pga 사용량을 확인하기 위해서는 추가적으로 v$mystat뷰와 조인을 하면된다.   SELECT m.name , t.valueFROM v$sesstat t,     v$statname…

Oracle 11g R2 silent mode 설치

설치전 사전 환경설정 ◆ 기본적은 OS 환경을 체크한다. [root@OTS ~]# lsb_release –a (리눅스 배포판 버전 확인) LSB Version:  :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch Distributor ID:  CentOS Description:  CentOS release 6.6 (Final) Release:  6.6 Codename: …

오라클 기본 유저 :: Oracle Default User

오라클 기본 유저입니다.   유저 패스워드 목적 생성스크립트 ANONYMOUS invalid password HTTP를 통해 Oracle XML DB를 접근하기 위해 사용되는 유저  ?/rdbms/admin/catqm.sql AURORA$ORB$UNAUTHENTICATED INVALID Aurora/ORB에서 인증하지 않는 사용자가 사용  ?/javavm/install/init_orb.sql called…

SQL로더 사용시 성능 향상 방법

모 고객사에서 아래와 같은 문의사항이 있었습니다. # 기존 스크립트 1번 : sqlldr userid=scott/tiger control=abc.ctl errors=999999999 READSIZE=3145728 BINDSIZE=3145728 ROWS=5000   # 변경 스크립트 2번 : sqlldr userid=scott/tiger control=abc.ctl errors=999999999 READSIZE=20000000 BINDSIZE=20000000…

블록 사이즈에 따른 데이타 파일 사이즈 제한

 일반적으로 DB 생성시 블록사이즈(Default:8k)에 따라 데이터 파일 사이즈가 제한된다. db_block_size     Datafile upper limit ———–   ——————–      2kb               8GB      4kb              16GB      8kb              32GB     16kb              64GB…

ASMM, AMM 메모리 관리기법

ASMM, AMM 메모리 관리기법     ASMM(Automatic Shared Memory Management) 9i 까지는 SGA 구성요소인 shared_pool, large pool, DB Buffer Cache 등에 대해서 DBA가 모니터링을 하다가 수동으로 크기를 늘려주곤 하였습니다. (예…

SQL FULL_TEXT 추출 방법

# 일반 터미널에서 해당 쿼리 실행 시 SQL문의 길이가 긴 경우 짤리는 현상이 생깁니다. 여기에서는 Orange 툴을 이용하여 진행 하겠습니다.       SQL문의 짤림 방지를 위하여 Orange 툴의 Long…

Exadata DISK_REPAIR_TIME 조회 및 변경

1. DISK_REPAIR_TIME 파라미터 조회 select name,value from v$asm_attribute where group_number=1 and name not like ‘template%’;   NAME                                          VALUE ——————————————— ——————————————— idp.type                                      dynamic idp.boundary                                  auto disk_repair_time                              3.6h phys_meta_replicated                          true failgroup_repair_time                         24.0h…

unicode.org 에서 표현 가능한 문자 찾기(UTF8)

##배경## 기존 DB(KSC5601 사용)에서 특정한자가 표현이 되지 않아 KSC5601의 문자표(코드표)를 찾아본 결과 해당 한자는 표현이 되지 않는 것으로 판명되었다. KSC5601의 Superset인 MSWIN949 캐릭터셋도 표현이 안되었고, AL32UTF8에서 표현이 되는지 찾아보기로 하였다. 현재 DBMS의 버전은…

Oracle TTS 마이그레이션 작업 가이드

TTS (Transportable Tablespace) 개요 Transportable Tablespace기능은 기존 데이터 로딩 방식이 실제 데이터를 추출하여 insert 하는 방식과는 다르게 테이블 스페이스 단위로 데이터를 마이그레이션 할 수 있는 기능이다. 같은 플랫폼은 물론이고 10g…

Client 권장 버전

  오라클에서 권장하는 Client와 Server의 버전 따른 호환성 관련 하여 나온 내용입니다.   Server에 설치 된 Oracle version 와 같은 Version의 Client를 설치하는 것을 권장. (기능적인 차이 때문에.)   적어도…

Exachk 수행방법

Exachk 수행방법 Exachk 수행전 초기화 (Option사항임) infiniband error reset 작업과 Diskgroup failgroup을 점검함. root에서 수행함. Infiniband에서 발생된 Error를 초기화함. ibclearcounters 수행 Disk와 ASM Diskgroup의 Mapping을 점검함 checkDiskFGMapping.sh 수행 (첨부파일 참조)…