개발자 끄적끄적

오라클 소개 본문

데이터 베이스

오라클 소개

햏치 2023. 3. 17. 15:28

<오라클(Oracle) 특징>
- 네트워크 환경 지원
- 다양한 운영체제 지원
- 대용량 데이터 처리 지원
- 여러 사용자의 동시 접속 지원
- 신뢰성 높은 보안 기능 제공
- 오류 및 장애에 대한 대비책 지원



<오라클 구조>
- 논리적 구성요소
  - 데이터 블록(data block)
  - 익스텐트(extent)
  - 세그먼트(segment)
 - 테이블스페이스(tablespace)

- 물리적 구성요소
  - 데이터파일
  - 컨트롤 파일
  - redo 로그 파일
  - 매개변수 파일
  - alert/trace 로그 파일
  - 백업 파일



<오라클 명령어>
1. 테이블보기
  - 현재 사용자 계정에서 사용하는 테이블 정보
  - 형식 : select* from tab; //tab은 table이름

2. 직전에 실행했던 며령문 보기 및 실행 - list, run
  - list : 바로 직전에 사용한 명령어 
  - run : 실행

3. 운영체제 명령어 실행시키기 - host
  - SQL*Plus 실행 도중 운영체제 명령을 실행
  - 형식 : host
  - 복귀 : exit

4. linesize, pagesize 설정
  - 테이블이 잘려서 보기 싫을 때
  - SQL>set linesize 100;
    SQL>set pagesize 20;
    SQL> select* from emp;

5. SQL*Plus 명령어 실행
  - 기타 명령어
    - cl scr : 화면 지우기
    - quit, exit : SQL*Plus를 종료(이전에 한 작업을 저장하고 종료, 만약 그냥 창을 닫으면 저장을 안하고 종료 -> 실제 데이터가 저장되지 않고 버퍼에 저장)
    - SQL>commit; : 완료(내가 이전에 작업한 작업물들을 저장)
    -  SQL>rollback; : 이전에 작업한 내용들을 모두 취소 


<데이터 블록 - 논리적 구성요소>
- 데이터가 저장되는 가장 작은 단위
- 저장해야할 데이터가 늘어나면 데이터 블록의 배수로 저장 공간을 확보하여 저장
- 데이터 블록 표준 크기는 db_block_size라는 설정 값에 저장
- 블록 크기 확인 명령
  - show parameter db_block_size - 관리자(sys)계정에서 가능



<익스텐트(extent) - 논리적 구성요소>
- 데이터의 블록 다음 단계의 논리적 데이터 저장 공간
- 연속적인 여러 개의 데이터 블록이 모여서 하나의 익스텐트를 구성
- 익스텐트가 모여 다음에 설명할 세그먼트를 구성
  - 하나의 세그먼트에 할당된 공간이 모두 사용되면 오라클은 새로운 익스텐트를 만들어 그 세그먼트에 할당



<세그먼트(segment) - 논리적 구성요소>
- 여러 개의 익스텐트들이 모여 하나의 세그먼트를 구성
- 하나의 세그먼트에는 같은 종류의 데이터가 저장
  - 데이터 세그먼트
    - 테이블에 저장되는 세그먼트
  - 인덱스 세그먼트
    - 인덱스(index) 정보가 저장되는 세그먼트
- 하나의 세그먼트 뒤에 설명할 하나의 테이블스페이스(데이터베이스를 구축하는 단위)에 저장
- 하나의 세그먼트를 구성하는 익스텐트들은 디스크상에 연속적으로 저장되지 않을 수도 있다



<데이블 스페이스(table space) - 논리적 구성요소>
- 하나의 데이터베이스는 오라클의 논리적 저장 단위인 테이블스페이스들로 구성
- 하나의 테이블스페이스에는 하나 이상의 세그먼트를 포함



<데이터파일(data file) - 물리적 구성요소>
- 오라클에서 관리하는 데이터가 실제로 저장되는 디스크 상의 파일
- oradata\oracl 폴더의 데이터 파일들
  - SYSAUX01.DBF, SYSTEM01.DBF : 오라클 시스템 관리를 위해 만들어진 데이터파일

  - TEMP01.DBF : 임시 데이터들을 저장하기 위한 데이터파일

  - USER01.DBF : 사용자 계정을 위해 만들어진 데이터파일

  - EXAMPLE01.DBF : 예제 테이블들을 저장하고 있는 데이터파일

  - UNDOTBS01.DBF : 데이터에 문제가 발생했을 때 복구를 위한 정보



<기타 물리적 구성요소>
- 컨트롤 파일(control file)
  - 데이터베이스의 물리적 구조, 데이터베이스 이름, redo 로그 파일들의 위치 정보, 
    데이터베이스 생성 시간, 현재 로그 번호, 체크포인트 정보 등이 저장

- Redo 로그파일
  - 데이터베이스의 변경 내역을 저장하는 파일
  - 데이터 변경 과정에서 장애가 발생하여 변경내용이 데이터베이스에 반영되지 못했을 경우
    온라인 redo 로그 파일을 이용하여 복구

- 설정 파일(parameter file)
  - 데이터베이스와 데이터베이스 서버와 관련된 설정 정보들이 저장

- alert/trace 로그 파일
  - 오라클 서버 내부에서 오류가 발생할 경우 그 오류에 대한 정보나 메시지를 저장하는 파일

 

<테이블스페이스 관리>
- 테이블스페이스 생성
- 테이블스페이스 변경
- 테이블스페이스 조회



<테이블스페이스 생성>
- 오라클에서 테이블을 생성하려면 테이블스페이스를 사용해야 한다
- 테이블 스페이스 사용
  - 오라클을 설치할 때 만들어지는 기본 테이블스페이스를 사용
  - 또는 새로운 테이블스페이스를 생성하여 사용
- 테이블스페이스는 오라클 관리자(sys)만이 생성
- 생성할 때 실제 데이터가 저장될 디스크 상의 파일인 데이터파일을 지정



<테이블스페이스 생성 - sys 계정에서 가능>
- 형식
  create tablespace<테이블스페이스 이름>
  datafile'<데이터파일 경로명>' size <데이터파일 크기>
*create tablespace를 하기 전에 'my_data'라는 폴더명을 만들어서 그 안에 테이블스페이스를 추가해야한다



<테이블스페이스 변경>
- 테이블스페이스에 새로운 데이터파일을 추가
- 형식
  alter tablespace<테이블스페이스 이름>
  add datafile'<데이터파일 경로명>' size<데이터파일 크기>

- 테이블스페이스를 삭제할 때에는 drop tablespace 명령을 사용
- 형식
  drop tablespace<삭제할 테이블스페이스 이름>



<사용자 계정 생성 - sys 계정에서 가능>
- 형식
  alter session set "oracle script"=true;create
  create user<사용자 계정>
  identified by<비밀번호>
  default tablespace<사용할 테이블스페이스 이름>
  quota unlimited<용량> on <사용할 테이블스페이스 이름>




<사용자 원한 부여>
- 관리자가 새로 생성된 사용자 계정에 대해 권한을 부여해야 오라클에 접속하여 사용 가능
- 권한 부여(sys 게정에서 부여)
  - grant connect, resource, dba to <사용자 계정>
  - grant connect, resource to <사용자 계정>

'데이터 베이스' 카테고리의 다른 글

SQL의 구성(DDL, DML)  (1) 2023.03.25
관계형 데이터베이스  (0) 2023.03.10
데이터 베이스 개념  (0) 2023.03.03