Oracle SGA 값을 증가 시킬 때 발생 장애 원인
Oracle Database 11g는 내부적으로 Table 크기에 대해 SMALL(Buffer Cache의 2%보다 작을 때), VERYLARGE( Buffer Cache의 5배 크기보다 클 때)로 구분하며 테이블에 대해 Full Table Sacn(FTS)을 할 때 Buffer Cache크기, Segment…
DB Admin Knowhow
Oracle Database 11g는 내부적으로 Table 크기에 대해 SMALL(Buffer Cache의 2%보다 작을 때), VERYLARGE( Buffer Cache의 5배 크기보다 클 때)로 구분하며 테이블에 대해 Full Table Sacn(FTS)을 할 때 Buffer Cache크기, Segment…
SQL> create sequence ots_seq; Sequence created. SQL> select ots_seq.nextval from dual ; NEXTVAL ———- 1 SQL> / NEXTVAL ———- 2…
cfile24.uf.26054F475689D91230E39E.pdf 사용자 실수로 오라클 클러스터 파일(GRID)을 유실 한 경우 복구 방법 테스트 자세한 내용은 첨부파일 참고
9. PL/SQL 내장 프로시저 및 함수 소개 A. 프로시저 및 함수 §명명된 PL/SQL 블록 §PL/SQL 서브프로램 §블록 구조 –선택적 선언 섹션 (DECLARE 키워드 사용X) IS,…
8. PL/SQL 예외처리 A. 예외란? – SELECT 문이 행을 하나만 읽어 들일 것으로 예상했지만 여러 행을 읽어 오류 발생하며 블록이 종료됨 – 위와같이 런타임에 발생하는 오류를 예외라고 한다.…
7. PL/SQL 명시적 커서 사용 A. Explicit Cursor B. Cursor 선언 §Syntax CURSOR cursor_name IS Select_statement; §Examples DECLARE CURSOR c_emp_cursor IS SELECT employee_id,…
6. PL/SQL 조합 데이터 유형 작업 A. 조합 데이터 유형 §스칼라 타입과는 달리 다중 값을 가질 수 있음 §모든 관련 데이터를 ‘단일 단위’로 보유-> 쉬운 액세스, 수정 §2가지 유형…
5. PL/SQL 제어구조 작성 A. IF Statement §Syntax IF condition THEN statements; [ELSIF condition THEN statements;] [ELSE statements;] END IF; ex) 1) 간단한 IF 문 DECLARE v_myage number :=…
4. PL/SQL 프로그램의 SQL문 (오라클 데이터베이스 서버와 상호작용) A. PL/SQL의 SQL문 §SELECT 명령을 사용한 DB 행 검색 §DML 명령을 사용한 DB 행 변경 §COMMIT, ROLLBACK, SAVEPOINT 명령을 사용한 TX…
3. 실행문 작성 A. Lexical Unit §모든 PL/SQL 블록의 기본 구조 §문자, 숫자, 탭, 공백, Return 및 기호를 포함한 문자, 시퀀스 §다음과 같이 분류 §식별자 : v_fname, c_percent §구분자…
2. PL/SQL 변수 선언 A. 변수 사용 및 처리 §Use §Data 의 임시 저장 영역 §저장된 값 조작 §재사용성 §Handling §선언 섹션에서 선언 및 초기화(optionally) §실행 섹션에서 사용되고 새 값이…
1. PL/SQL 소개 A. PL/SQL SQL을 확장한 절차적 언어(Procedural Language) 관계형 DB에서 사용되는 Oracle 표준 데이터 액세스 언어 코드 실행 단위에 블록 구조 제공 쉬운 코드 유지 관리 가능 프로시저…
오라클은 타 DB와는 다르게 AIX,LINUX,HP,SOLARIS,WINDOWS OS에 설치가 가능합니다. 그에 따라 OS 마다 필요한 정보를 가져 갈 줄 알아야하는데 대표적인 명령어를 기술했습니다. 1. CPU 정보 AIX lsdev -Cc processor HP-UX…
Oracle RAC 구축 시 ACFS 설치 문제로 GRID 설치가 진행이 안되는 이슈가 있습니다. Windows 2012 R2 에서 RAC 구축시에 ACFS 이슈가 나왔고 Softonly로 설치 후 Bundle Patch 하고 진행하니 이슈…
Oracle datapump는 oracle 10g 버전부터 등장한 export/import 의 향상된 유틸리티입니다. 1. Datapump의 장점 -작업 관리의 편이성 : 작업 중지가 가능함.(job의 제어가 가능) -필요한 디스크 공간의 예측 : ESTIMATE 파라미터를 사용하여…
배경 : 현재 12c 설치되어 있고 PDB 2개 설치 되어 있는 상태 입니다. # Tablespace 관리 MANAGING TABLESPACES IN A CDB Tablespace는 단 하나의 컨테이너(Root or PDB)에만 속한다.…
Windows 에서 Oracle RAC 구축시에 주의 할 사항으로 바로 네트워크 어댑터의 한글명입니다. Windows 를 한글로 설치하게 되면 네트워크 어댑터명이 이더넷 으로 등록이 됩니다. 네트워크 어댑터 명이 한글로 설정되게 되면 CRS…
배경 : 현재 12c 설치되어 있고 PDB 2개 설치 되어 있는 상태 입니다. # 시작 및 서비스 접속방법 CDB & PDB 시작 [root@test ~]# su – oracle [test@cdb1…
위 그림에서 제일 위에 있는 Block Header는 Cache layer(common)와 Transaction layer(varaible,fixed) 나뉩니다. 위에서 구분한 부분들의 각각 크기를 비교해보겠습니다. SQL> select component, type, description, type_sizefrom v$type_sizewhere component in (‘KCB’,’KTB’); COMPONEN…
DB 종료 후 전체 파일을 백업 받는 방식 특징 모든 파일은 동일한 SCN을 가져야 함. 즉 shutdown 시점이 같이야 함. 또한 정상적으로 종료해야 함. 아카이브, 노아카이브 모두 사용 가능 datafile,…
인덱스 모니터링 방법 한 번에 10개 정도의 인덱스 모니터링을 권고 ex: 출근 해서 체크, 퇴근 시 체크 후 사용 한 인덱스가 있으면 모니터링 종료, 다른 인덱스 모니터링 시작(10개 정도의 인덱스를…
# 특정 테이블의 인덱스 조회하기 col INDEX_OWNER for a10 col INDEX_NAME for a15 col TABLE_OWNER for a10 col TABLE_NAME for a15 col COLUMN_NAM for a15 SELECT A.uniqueness, b.*…
인덱스란 어떤 데이터가 어디에 있다는 위치 정보를 가진 주소 개념(목차) 적절한 인덱스를 사용 할 경우 쿼리 속도 향상 테이블에 저장되어 있는 데이터를 좀 더 빠르고 효율적으로 찾기 위해 사용 됨…
# Redo Log의 생성원리 *Write Log Ahead 실제 데이터를 변경하기 전에 Redo Log에 먼저 기록을 한 후 데이터를 변경합니다. *Log force at Commit Commit 요청이 들어오면 Redo Log File에 저장한…
참조 뷰 dba_tab_modifications 사용 방법 DBMS_STATS flush 후 수행 예시: exec dbms_stats.flush_database_monitoring_info 예시: select * from dba_tab_modifications where table_owner=’SCOTT’ ; where 절에서 필요한 값을 입력 SQL> / …
# Synonym 시노님은 오라클 객체(테이블, 뷰, 시퀀스, 프로시저)에 대한 대체이름(Alias)를 말합니다. Synonym은 실질적으로 그 자체가 Object가 아니라 Object에 대한 직접적인 참조 입니다. 시노님 사용 대상데이터베이스의 투명성을 제공하기 위해서 사용…
# 집합쿼리 집합 연산자를 사용시 집합을 구성할 컬러의 데이터 타입이 동일해야 합니다. UNION :합집합 ◈ UNION ALL:공통원소 두번씩 다 포함한 합집합 INTERSECT:교집합 ◈ MINUS:차집합 UNION은 두 테이블의 결합을…
# 다중 열 서브쿼리 다중 열 서브쿼리란 서브쿼리의 결과값이 두개 이상의 컬럼을 반환하는 서브쿼리 입니다. 서브쿼리가 한번 실행되면서 모든 조건을 검색해서 주 쿼리로 넘겨 줍니다. ex)…
# 다중 행 서브쿼리 하나 이상의 행을 RETURN하는 SUBQUERY를 다중 행 SUBQUERY라고 합니다. 복수 행 연산자(IN, NOT IN, ANY, ALL, EXISTS)를 사용 할 수 있습니다. # 예제 IN…
# 단일 행 서브 쿼리 오직 한개의 행(값)을 반환 합니다.(Return only one row) 단일 행 연산자(=,>, >=, <, <=, <>, !=) 만 사용 할 수 있습니다. SQL> SELECT ename,job…
# 그룹함수 그룹 함수란 여러 행 또는 테이블 전체의 행에 대해 함수가 적용되어 하나의 결과값을 가져오는 함수를 말합니다.. GROUP BY절을 이용하여 그룹 당 하나의 결과가 주어지도록 그룹화 할 수 있습니다. HAVING절을 사용하여…
권한 (Privilege) GRANT privilege ON objectㅁ TO [user, role, PUBLIC] [WITH GRANT OPTION] SQL> CONN system SQL> GRANT CREATE SESSION TO ora10g; ROLE GRANT privilege01, privilege02, .. TO…
제약 조건(Constraints)의 정의 테이블에 추가, 변경, 삭제되는 데이터를 제약. 제약 조건의 필요성 데이터의 무결성(Integrity)을 유지하기 위해 사용. 제약 조건의 종류 UNIQUE (UK) : 중복된 값을 허용하지 않음. NOT NULL (NN)…
트랜잭션: 한 작업의 단위 commit, rollback 데이터 추가 – INSERT INSERT INTO 테이블이름 (칼럼이름1, 칼럼이름2, ..) VALUES (값1, 값2, ..); 예. ‘IT Education’이라는 신규 부서를 부서번호 280으로 부서(department)…
+ 시작방법 /opt/oracle.cellos/vldrun -script oswatcher 해당 프로그램 수행시 내부적으로 /opt/oracle.cellos/validations/init.d/oswatcher 파일내에 nohup ./startOSW.sh 15 168 bzip2 3 가 수행됨. 아래와 같이 Option으로 수집주기와 보존기간을 지정하여 실행 /opt/oracle.oswatcher/osw/startOSW.sh $arg1 $arg2…
sar.sh 수행 옵션 -t : top process : 각 DB Node별 Top process를 보여줌, -r : file logging : 해당 내용을 File로 Log함. Sar_날짜.log로 파일이 생성됨. 기본적으로 /tmp로 설정되어 있으나…
# Select 문장의 실행 원리 Parse(구문분석) –> Bind(치환) –> Excute(실행) –> Fetch(인출) (1) Parse (구문 분석 단계) 문법검사 : select, from, where 등의 Keyword를 검사합니다 의미검사 : 위 문법들을 제외한…
# Exachk * Oracle Exadata Database Machine exachk or HealthCheck (Doc ID 1070954.1) exachk 2.2.2 “What’s New” exachk daemon to support non-interactive execution on storage servers and IB switches Ability…
로컬과 서버간에 파일을 옮겨야 하는 경우에 사용 사용 방법 # 접속할 서버의 ip 정보 조회 ipconfig -a 현재 ip는 192.168.56.102 # 접속정보…
SQL*Loader는 외부파일 데이터를 데이터베이스 테이블에 loading 하는 utility입니다. 다양한 데이터의 저장형태를 지원합니다. 이 utility로 아래와 같은 작업을 수행할 수 있습니다. 동일한 loading 세션을 통해 하나이상의 데이터파일 데이터를 loading 할 수…
PGA PGA는 단일 프로세스(서버나 백그라운드)에 대한 데이터와 제어 정보를 저장하는 메모리 영역입니다. 따라서 PGA를 “프로그램 글로벌 영역” 또는 “프로세스 글로벌 영역” 이라고 합니다. 운영 체제와 구성에 따라 다르지만 사용자 프로세스가…
SGA SGA는 한 오라클의 인스턴스에 대한 데이터와 제어 정보를 가지는 공유 메모리 영역입니다. SGA와 오라클 백그라운드 프로세스가 오라클 인스턴스를 구축합니다. 오라클 인스턴스가 시작될 때 SGA를 할당하고 인스턴스가 종료하면 할당을 해제합니다.…
테이블(Table) 데이터 스토리지의 기본 단위로, 행(row)과 열(column)로 저장됩니다. 실제 디스크 공간을 사용하지 않지만 사용자가 지정한 표현식이나 함수에 의해 계산될 수 있는 가상 컬럼(virtual column)을 지정할 수 있습니다. 테이블에 대한 압축…
테이블스페이스(Tablespace) 데이터베이스는 논리적 저장 영역 단위인 테이블스페이스로 나누어집니다. 테이블스페이스는 연관된 논리적 구조를 그룹화합니다. 예를 들어, 테이블스페이스는 특정 관리 작업을 간단히 하기 위해 보통 응용 프로그램의 모든 객체를 그룹화합니다. 데이터베이스는 논리적으로…
데이터파일(datafile) 모든 Oracle 데이터베이스는 하나 이상의 물리적 데이터 파일을 가집니다. 데이터베이스의 데이터 파일은 데이터베이스의 모든 데이터를 가집니다. 테이블이나 인덱스 같은 데이터베이스의 논리적 구조는 데이터베이스를 위해 할당된 데이터 파일에 물리적으로 저장됩니다.…
# 오라클 기본 포트 사용 E.3 Port Numbers and Protocols of Oracle Components The following table lists the port numbers and protocols used by components that are configured during the…
스탠다드 설치 시 control_management_pack_access 체크 비활성 확인 설치 후 조회 select name, value from v$parameter where name=’control_management_pack_access’ ; 설치 후 옵션 사용 조회 select * from…
컨트롤파일 위치 조회 컨트롤파일 백업 트레이스파일 생성 확인 데이터 카운트 데이터 추가 컨트롤파일 삭제 …
질의 최적화는 관계형 데이터베이스의 성능, 특히나 복잡한 SQL 문장의 수행에 있어서 아주 중요한 요소이며, 오라클 데이터베이스는 비용기반 최적화 기법을 사용합니다. 비용기반 최적화 기법에서는 주어진 질의에 대해 다양한 실행 계획(execution plan)이…
Flashback Database Oracle Database 10g 이전까지는 transactional point-in-time recovery를 위해서는 backup용 file과 redo log file을 이용하여 원하는 시간까지 복구를 해야만 했었습니다. 그러나 이 방법은 backup용 file이 오래됐고, archive log가…
Oracle Net Service 드라이버 등은 Oracle 서버상에서 실행되는 Oracle RDBMS프로세스와 네트웍의 다른 컴퓨터에서 구동되는 Oracle Tool의 클라이언트 프로세스간의 인터페이스를 제공합니다. 이러한 드라이버들은 Oracle Tool의 인터페이스로부터 SQL문장을 받아서 Oracle 서버로 전송하기…
일반적으로 Application과 데이터베이스는 Client와 Server라는 개념으로 분리되어 관리되며, 물리적으로도 다른 서버에 위치하게 됩니다. Client는 데이터베이스의 정보를 접근하는 application을 수행하게 됩니다. 데이터베이스 서버는 오라클 S/W를 실행하며 데이터베이스 데이터에 대한 동시 접속을…
Oracle은 각 인스턴스에 대해 일련의 백그라운드 프로세스를 생성합니다. 이 프로세스들은 여러 Oracle 프로그램이 실행해야 하는 기능을 통합합니다. 기능을 통합하지 않는 다면 각 사용자 프로세스마다 여러 개의 Oracle 프로그램을 실행해야 합니다.…
Oracle은 서버 프로세스를 생성하여 접속된 사용자 프로세스의 요구 사항을 처리합니다. 서버 프로세스는 사용자 프로세스와의 통신과 사용자 프로세스의 요구 사항을 수행하는 Oracle과의 상호 작용을 담당합니다. 예를 들어, 사용자가 시스템 글로벌 영역의…
Oracle Database 9i까지는 테이블이 Drop 되면, 즉시 그 테이블에 할당되었던 공간이 반납되었습니다. Oracle Database 10g는 테이블을 Drop 할 때, 할당된 공간과 의존관계가 있는 객체들이 회수되지 않습니다(그러나, DBA_FREE_SPACE 뷰에서는 제거된 것으로…
SYSAUX 테이블스페이스 시스템 테이블스페이스에 대한 보조 테이블스페이스입니다. 대부분의 데이터베이스 항목들이 그것에 대한 데이터를 저장하기 위해 SYSAUX 테이블스페이스를 사용합니다. 그러므로, SYSAUX 테이블스페이스는 선택사항이 아니며 항상 데이터베이스 생성이나 업그레이드시에 생성됩니다. SYSTEM 테이블스페이스와…
ASM Rebalancing Disk가 추가/삭제 또는 크기 조정이 일어날 때, Disk group은 모든 Storage에 대한 load를 균등히 하기 위해 rebalancing 작업을 수행합니다. Disk group에 포함되는 Disk의 크기를 기준으로 해당 작업을 수행하게…
Disk Group ASM Disk group은 논리적인 단위로써 관리되는 디스크 집합체이며, ASM에서 고려되는 최상의 데이터 구조입니다. 개별 Disk group은 자신의 파일 Directory와 Disk Directory 그리고 다른 Meta data를 포함하고 있습니다.…
Automatic Storage Management(ASM) 개요 데이터베이스 구성 시 기본이 되는 디스크를 효율적으로 관리하기 위해 Oracle10g에서 새로 선보인 데이터베이스 서비스입니다. ASM은 하나의 SMP 장비 뿐만 아니라, RAC을 구성하는 모든 노드들에 대해서도 지원이…
오라클 데이터베이스에서 사용되는 중요한 공유메모리의 관리를 자동화 해주는 기능입니다. 즉, 해당 파라미터의 지정이 필요 없게 되었습니다. 게다가, 가용한 메모리를 효율적으로 사용할 수 있게 합니다. 예를 들어, OLTP 작업이 낮에 발생하고…
Oracle 데이터베이스의 논리적 구조 중 최소의 단위는 데이터베이스 블록입니다. 데이터베이스 블록의 크기는 운영체제 블록 크기의 정수 배로 정의됩니다. Oracle 서버의 모든 I/O는 데이터베이스 블록 단위로 이루어 짐을 감안할 때 블록의…
차세대나 개발DB 구축시에 기존에 있던 환경과 동일하게 구축하고자 할때 사용 하는 방법입니다. 간단한 쿼리를 이용해서 추출을 할 수 있습니다. Set pages 500 Set line 500 Set…
Listener.ora 이란? 클라이언트에서 서버로 접속할 때 필요한 정보들을 설정해 주는 파일로서 서버에만 설정합니다. 파일 위치 Single DB = $ORACLE_HOME/network/admin RAC=$GRID_HOME/network/admin LISTENER = (DESCRIPTION_LIST = …
TNSNAMES.ORA란 클라이언트에서 서버로 접속할 때 필요한 서버의 정보를 기입하는 파일입니다. 파일 위치 Single DB = $ORACLE_HOME/network/admin RAC=$GRID_HOME/network/admin ORCL(ALIAS) = (DESCRIPTION = (ADDRESS_LIST = …
오라클은 기본적으로 AWR SNAPSHOT을 주기적으로 생성합니다. SYSAUX Tablespace 의 공간에도 문제가 없었고, DB자체에도 문제가 없었는데 Snapshot 이 생성이 되지 않는 경우가 발생하였던 적이 있습니다. 아예 발생하지 않은게 아니라 드문드문 생성이…
TNSPING 이란 OS에서는 PING 을 이용해서 해당 IP와 통신이 되는지 확인 할 수 있습니다. TNSPING은 오라클에서 제공하는 기능으로 클라이언트에서 서버로 접속을 할 때 PING은 되지만 Orange나 Toad로 접속이…
ORACLE RAC 구축시 ORACLE OS USER간의 SSH 통신이 비밀번호 없이 ssh host_name 을 통해 이루어져야 합니다. 흔히 ssh-keygen 을 이용해서 사용하는데 Oracle에서 제공 하는 sshsetup을 통해서도 간편하게 구성할…
고객사에서 SYS와 SYSTEM 등 User의 Password 를 일정 기간마다 변경 해주는 경우가 있습니다. Password를 변경 해주고 Orange 나 Toad 를 이용해 SYS 로 접속 하려고 하면 Fail 이 납니다. 그…
오라클 데이터베이스의 multi-version read consistency는 항상 일관되고 정확한 읽기 결과를 제공합니다. 어느 트랜잭션이 데이터를 변경하면 원래의 데이터 값은 데이터베이스의 undo 레코드에 기록이 되며, 아래 그림과 같이 오라클 데이터베이스는 이 값들을…
Oracle 서버는 Commit 되지 않은 트랜잭션을 Rollback 시키기 위해, 데이터베이스의 복구 과정을 위해, 그리고 동시 사용자 환경에 필요한 읽기 일관성의 보장을 위해 롤백 정보 또는 Undo 정보를 관리합니다. 이러한 Undo…
오라클 데이터베이스는 궁극적으로 운영체제 상의 파일에 데이터를 저장합니다. 따라서 다수의 데이터베이스 작업은 파일과 관련되며, 그 경우 SQL 명령 등에 파일에 관한 명세를 주어야 합니다 Oracle은 파일 생성, 삭제 등 관리를…
Oracle Database 9i까지는 세그먼트 HWM이하에 할당된 공간은 오직 세그먼트를 이관하거나 재 정의할 때 반납되었습니다. Oracle Database 10g부터는 세그먼트의 빈 공간을 shrink 할 수 있습니다. 세그먼트가 shrink 될 때, 그 데이터는…
$ORACLE_HOME/rdbms/admin/awrinfo.sql awrinfo.sql을 통해 AWR에 저장된 정보를 확인 할 수 있다. (에러 정보, 현재 설정 정보(interval, 보존 기간 등), 유저 별 SYSAUX 사용 정보 등) 전문 ~~~~~~~~~~~~~~~…
$ORACLE_HOME/rdbms/admin/utlsyxsz.sql 간단한 인터뷰를 통해 SYSAUX의 사이즈를 예상 할 수 있다(보관주기, interval 등) 전문 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SYSAUX Size Estimation Report ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Estimated at 13:16:38 on Jan…
설치 후 검수에 사용하는 커맨드 pmon 확인 ps -ef |grep pmon 리스너 확인 ps -ef |grep tns lsnrctl status [LISTENER_NAME] SID 및 상태 확인 select instance_name, status from v$instance ;…
# Oracle Log Miner(8i 등장) -Log Miner 유틸리티는 Redo Log file에 있는 내용을 추출해서 SQL 문장으로 변환해줍니다. -데이터베이스에서 변경된 내역을 트랜잭션, 사용자, 테이블, 발생시간대 별로 추적할 수 있습니다. 아래와 같은…
백업 수행 rman target / backup database ; 진행률 확인 select sid, serial#, context, sofar, totalwork, round(sofar/totalwork*100,2) “%_complete” from v$session_longops where opname like ‘RMAN%’ and opname not like…
# Hugepage 란? 일반적인 컴퓨팅 시스템은 물리적 메모리 크기를 극복하기 위해 가상메모리 기법을 사용하며, 상이한 두 메모리를 매핑하기 위해 Page Table이 존재하고 Page 단위로 관리됩니다. 리눅스 시스템의 경우 보통 4k로…
1. ISO mount# mkdir -p /u01/stage/OSimage/u01/stage/OSimage 에 32bit iso(ex.V41367-01.iso) 전송# mkdir -p /mnt/iso# mount -o loop /u01/stage/OSimage/V41367-01.iso /mnt/iso 2. Repository file 수정# vi /etc/yum.repos.d/public-yum-ol6.repo– 모든 “enabled=0” 설정 (enabled=$uek, enabled=$uekr3…
[1] Oracle 11g 설치 (1) 아래 주소에서 OS에 맞는 11g Release 2 Express Edition을 클릭한다. (스크롤 내리면 최 하단에 위치함) https://www.oracle.com/database/technologies/oracle-database-software-downloads.html (2) 아래의 설치 파일 클릭하여 다운로드 (3) 설치된 경로로…
현재 파라미터 파일 확인 show parameter spfile 경로가 존재하면 spfile 존재하지 않으면 pfile 파라미터파일 경로 확인 기본 설정은 오라클 홈 아래 dbs 밑에 존재 $ORACLE_HOME/dbs/ pfile…
노마운트 단계 startup nomount ; 마운트 단계 alter database mount ; 오픈 단계 alter database open ;