개발자 끄적끄적
오라클 소개 본문
<오라클(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 |