목록study_DB/Oracle (9)
Msg 성장일기
1) OS requirement 확인 - RPM 설치 (yum / rpm -ivh) - 그룹 및 유저 / 패스워드 생성 - 설치 경로 디렉토리 생성 (ORACLE_HOME/ ORACLE_BASE) - Kernel Parameter 설정 및 적용 - 자원 제한 설정 - /etc/hosts 설정 및 hostname(규칙설명) 확인 - 유저 profile 설정 2) Database 설치 - Database 엔진 설치 - Database 엔진 patch - Database 생성 실제 실습 1) oracle linux 7.6 설치 https://edelivery.oracle.com/osdc/faces/SoftwareDeliver2) https://positivemh.tistory.com/521 참고하여 ..
RAC(Real Application Cluster)란Cluster에서 모든 node에서 동일한 Storage를 바라보고 접근할 수 있게 해주는 소프트웨어이다.- 여러 인스턴스들이 클러스터 된 하드웨어를 사용 가능하다.- 각 데이터베이스 파일에 대한 물리적 또는 논리적 접근이 가능하다.* 여기서 cluster란 둘 이상의 Oracle Rac 노드들이 함께 연결되어 동일한 스토리지를 공유하는 "전체 공유" 데이터베이스 아키텍처를 의미한다. (두 개 이상의 독립된 서버들과 Disk를 하나로 연결하는 기법)* 인스턴스란 논리적인 공간이며, 내부 메모리 구조와 프로세스로 구성된다.Oracle RAC 구성요소1) Oracle Grid Infrastructure- Oracle Cluster Ready Servic..
1) CTAS# 첫번째 방법CREATE TABLE test_new TABLESPACE test_space AS SELECT * FROM test_old; --스키마만 복제시 SELECT * FROM ST_POST_DTL; WHERE 1=0;test_new 테이블을 생성하고 tablespace를 선언해주고 백업할 테이블 복제하면 됨# 두번째 방법1) 이관 대상 테이블과 동일한 타겟 테이블 레이아웃 생성 (주의 : DEFAULT 값이 설정되어 있으면, 아래의 방법으로 테이블 생성 시 적용되지 않으므로 수동 적용해야 함)CREATE TABLE TOBE_TEST -- 타겟 테이블ASSELECT * FROM ASIS_TEST -- 이관대상 테이블명 WHERE 1=2; 2) 타겟 테이블에 데이터 저장..
테이블을 파티션 함으로써 얻게 되는 장점특정 혹은 최소한의 파티션만을 스캔함으로써 스캔 범위를 줄이는 효과 특정 파티션 별로 별도의 백업 및 다양한 관리 작업을 수행할 수 있음 다양한 파티셔닝 기법Range 파티션: 파티션을 나누는 기준이 되는 키가 되는 컬럼값의 범위를 기준으로 파티션을 생성하는 방식 테이블은 논리적으로만 정의되고 실제 테이블 데이터는 각각의 파티션에 나누어 저장됨 주로 날짜 (년,월,주)를 기준으로 파티션을 나눌 때 사용기본적으로 다음 두가지 옵션을 적용하여 Range 파티션을 생성함1) Partition by range(컬럼1, 컬럼2...) : 파티션 키 컬럼을 설정하는 옵션2) Values less than (컬럼값) : 각 range partition에 포함될 최대값을 설정하는..
1. 오라클 설치시 ORACLE_HOME과 ORACLE_BASE를 지정해야 함 - ORACLE_HOME : 오라클 소프트웨어를 설치할 디렉터리 - ORACLE_BASE : 오라클 DB파일을 보관할 디렉터리 ● ORACLE_HOME의 중요 디렉터리 - database :원도우 버전 오라클의 서버 파라미터 파일이나 패스워드 파일이 존재 - dbs : 유닉스/리눅스 버전 오라클의 서버 파라미터 파일이나 패스어드 파일이 존재 - bin (.bash_profile의 path) SQL*Plus 등 오라클 운영 프로그램들이 존재하므로 셸이나 명령어 프롬프트에서 바로 실행할 수 있도록 환경 변수에 PATH를 설정해 놓으면 유용 - network/admin : 네트워크 접속과 관련된 설정 파일이 존재 - sqlplus ..
Redo Log는 데이터가 변경된 내역을 전부 저장했다가 나중에 데이터를 내려쓰거나 데이터를 복구할 때 쓰이는 파일입니다. 따라서 Redo Log 역시 데이터베이스 운영에 핵심이 되는 파일이므로 다중화하여 기록할 수 있습니다. Redo Log의 다중화는 최소 2개의 그룹으로 이루어지며 각 그룹마다 최소 1개의 Redo Log 파일이 존재해야합니다. 한 그룹의 Redo Log를 다 쓰고 다음 그룹으로 넘어가는 현상을 Log Switch라고 하고, 반복된 로그 스위치를 거치며 마지막 그룹에서 최초의 그룹으로 돌아와서(한바퀴 돌고) 첫번째 리두 데이터를 덮어쓰기 시작하는 것을 Log Spinning이라고 합니다. 통상적으로 Log Switch와 Log Spinning이 발생할 때 Checkpoint가 발생하여..
오라클 데이터베이스 주요 디스크 구조 1) 컨트롤 파일 2) 데이터 파일 3) 리두 로그 파일 1) 컨트롤 파일 (Control File) : 데이터베이스 구성 정보(DataFile, Redo Log File의 위치, 데이터베이스의 시점(SCN)등)를 담고 있는 파일로써, 데이터베이스의 구성에 변경이 일어날 때마다 오라클에 의해 갱신되는 핵심 파일입니다. Control File도 데이터베이스를 구성하는 핵심 파일들의 위치를 기억하고 이들과 지속적으로 동기화를 해서 데이터베이스 정상 상태를 유지합니다. 예를 들자면, control file은 뇌와 같다. 뇌의 기능이 비정상이면 자신이 누구인지 모르고, 몸을 움직일 수 없는 식물인간이 되는 것처럼 Control File의 상태가 비정상이면 데이터베이스는 정상..
공유풀:라이브러리 캐시, 딕셔너리 캐시, 컨트롤 구조를 포함하는 SGA영역 1) 라이브러리 캐시- 파스(pharse)된 SQL 관련 정보를 저장 (사용자가 요청한 sql 문장을 서버프로세스가 여러 단계를 거쳐 작업할 때 사용하는 작업공간)- 라이브러리 캐시에 저장된 SQL 문자 실행 시 파스 과정 거치지 않는다.* 오라클은 LRU 알고리즘 사용 (파싱 및 컴파일 된 프로그램 및 프로시저를 저장함) 2) 데이터 딕셔너리 캐시- DB 테이블과 뷰에 대한 정보, 구조 , 사용자등에 대한 정보가 저장되어 있음- 파싱 과정 가운데 참조된 데이터 딕셔너리 오브젝트 정보를 저장함 3) Result cache- 임의의 SQL 혹은 PL/SQL 문장을 실행하는 경우 그 결과값을 메모리에 저장 후 같은 결과값이 요청되면 ..