Database (29)

오라클 아키텍처 내부구조: Architecture Internal

오라클의 내부 구조는 크게 인스턴스(Instance)와 데이터베이스(Database)로 구성된다. 인스턴스는 오라클의 메모리 구조를 의미하며 데이터베이스는 오라클의 디스크 구조를 의미한다. 아래 그림은 오라클 내부 구조의 전반적인 모습을 나타낸다. 보라색 타원형이 오라클 서버를 유지하는 프로세스를 의미한다. # CKPT -. 체크포인트 이벤트를 3초마다 한번씩 발생한다. -. 컨트롤 파일과 각 데이터 파일 헤더에 체크포인트 정보를 기록한다. # DBRW -. Database Buffer Cache의 수정된 데이터를 Data File에 기록한다. -. Check Point Event가 발생했을 때 기록한다. -. Database Buffer Cache의 저장영역이 1/3 이상 찼을 때 기록한다. -. Da..

Database/Oracle | 2018. 9. 24. 00:30

[오라클/Oracle] 테이블스페이스와 데이터파일의 관계

아래의 그림은 오라클의 논리적 및 물리적인 구조를 나타내는 표본적인 그림이다. 그림에서와 같이 테이블스페이스는 하나 이상의 데이터파일로 구성된다. 데이터베이스를 관리하는 방법에 따라 테이블스페이스와 데이터파일이 1:1로 대응하도록 관리할 수도 있겠지만, 데이터파일의 크기는 오라클의 버전 및 운영체제에 따라 최대 크기의 제한이 있다. 따라서 크기가 점차 커지게 되면 언잰가는 해당 테이블스페이스를 지칭하는 '제 2의 데이터파일' 추가로 생성해야하기 마련이다. 추가로, 아래 그림의 OS 블록에는 저장 영역 시스템에 따라서 SAN, NFS, NAS, ASM, Exadata, RAW, 파일시스템 등이 있다. 아래의 그림과 같이 테이블스페이스는 논리적인 단위를 의미하며, 데이터파일은 실제 디스크에 저장되는 물리적인..

Database/Oracle | 2018. 9. 23. 00:30

[오라클/Oracle] 콜드 백업 복구(Cold Backup Recovery)

# 도움이 될만한 포스팅 -. 골드 백업 절차: http://wookoa.tistory.com/394 # 오라클 콜드 백업 복구(Cold Backup Recovery)의 수행절차 01. OS에서 데이터파일 임의로 삭제 OS> rm /u01/app/oracle/oradata/orcl/woozone.dbf OS> rm /u01/app/oracle/oradata/orcl/sysaux01.dbf 02. Oracle 데이터베이스 startup 수행 데이터파일에 문제가 발생했기 때문에 오라클은 mount 상태에서 기동을 멈춘다. 03. 아래의 SQL을 활용해서 문제가 발생한 데이터파일을 조회 COL NAME for a50 SELECT rf.FILE#, d.NAME FROM V$RECOVER_FILE rf, V$DA..

Database/Oracle | 2018. 9. 22. 00:30

[오라클/Oracle] 콜드 백업(Cold Backup)

# 도움이 될만한 포스팅 -. 골드 백업 복구 절차: http://wookoa.tistory.com/395 # 오라클 콜드 백업(Cold Backup)의 특징 -. 데이터베이스가 Shutdown된 상태에서 수행하는 백업을 의미 -. ARCHIVE LOG MODE와 NOARCHIVE LOG MODE 관계없이 수행이 가능 -. 백업 과정 중 REDO LOG FILE을 반드시 백업할 필요는 없으나, 복구 과정의 편의상 백업을 해 두는 것이 좋음 -. 초기화 파라미터 파일은 그 내용이 변경되었을 경우에 백업 -. 개념적으로 단순하여, 백업 및 복구방법이 용이 -. NOARCHIVE LOG MODE일 경우에는 백업받은 시점 이후의 데이터는 보장하지 않음 # 오라클 콜드 백업(Cold Backup)의 수행절차 01..

Database/Oracle | 2018. 9. 21. 00:30

DBA(Database Administrator) 업무 정리

본인이 예전에 누군가에게 받았던 텍스트 문서를 포스팅 한다. DBA의 업무를 문서 한장으로 정리할 수 없겠지만, DBA 업무에 대해서 개략적으로 잘 정리되어 있어서 좋은 자료라 생각된다. 벤더에서 지원하는 DBA가 아닌, DBMS를 직접 활용하는 DBA의 필요한 업무 능력 위주로 나열했다. 자신이 추구하는 DBA 성향에 따라서 각 항목별로 조금씩 다른 선택이 필요할 것 같다. 01. Multi-DBMS(설치, 아키텍처, 특징, 기능, 성능, 이중화, 설계, 구축) - 외산 : Oracle, DB2, Sybase, MySql, MS-SQL Server 등 - 국산 : Cubrid, Altibase, Tibero 등 - MMDBMS, DRDBMS 02. 데이터모델링 도구(ERD 작성 및 검토, 데이터 품질/..

Database/General | 2018. 9. 14. 00:30

오라클 SCOTT 계정 생성: 학습 및 테스트 계정

오라클을 설치하면 기본적으로 제공되는 계정들이 있다. SCOTT, HR 등의 계정(스키마)가 대표적인데, 해당 계정들에는 연습용으로 SQL을 실습할 수 있도록 샘플 데이터도 입력 되어있다. 하지만, 이러한 계정들은 설치 직후에 기본적으로 잠겨있기 떄문에 관리자(SYS, SYSTEM) 권한으로 특정 계정의 'UNLOCK' 상태를 해제해야 된다. 01. 관리자 권한으로 접속 특정한 계정의 Lock, Unlock을 설정하기 위해서는 dba 권한이 필요하다. SYS 계정을 DBA권한으로 접속을 한다. SYS 계정에 따로 패쓰워드를 설정하지 않았다면, 오라클을 설치하면서 입력한 패쓰워드를 입력하면 된다. Command: SQLPLUS SYS/(password) AS SYSDBA 02. 계정 잠금 해제 아래의 명령..

Database/Oracle | 2018. 9. 13. 00:30

'SQLDEVELOPER.BAT 파일을 찾는 중입니다' 오류 해결 방법

Oracle에서 기본으로 제공되는 클라이언트 DB 접속툴을 이용할 때, 아래의 사진과 같이 'SQLDEVELOPER.BAT 파일을 찾는 중입니다. 파일을 직접 찾으려면 [찾아보기]를 클릭하십시오.' 오류 메시지가 팝업되는 경우가 있다. SQL Developer 설치 파일을 오라클 공식 홈페이지에서 다운로드 받은 뒤 해결할 수 있다. 아래의 오라클 공식 홈페이지에서 자신의 운영체제에 맞는 zip 파일을 다운로드 받는다. 다운로드 받아진 zip 파일을 기존의 설치경로에 덮어쓰기로 압축을 풀어준다. Oracle SQL Developer: http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html

Database/Oracle | 2018. 9. 12. 00:30

오라클 서버의 기동 단계: shoutdown, nomount, mount, open

오라클 서버가 기동될때 세부적인 단계가 존재한다. 오라클 서버는 기본적인 'Startup' 명령어로 기동할 경우, 내부적으로 차례 차례 단계적 기동이 이루어 진다. 하지만, 정상적으로 기동되지 않을때는 경우에 따라서 특정한 단계에서 기동이 멈추는 경우가 많다. 이럴 경우 각 단계별로 필요한 문제를 해결하고 오라클 서버를 수동으로 기동시켜줘야 한다. 본 포스팅에서는 오라클 서버가 기동되는 단계를 소개한다. 오라클 서버의 기동 단계는 위의 그림과 같이 간단하게 요약해볼 수 있다. 오라클 서버가 기동되지 않은 상태에서 원활한 서비스가 가능한 상태까지 4개의 단계를 거쳐서 기동된다. 01. Shutdown 오라클 서버가 완전히 종료된 상태로 Database와 Instance가 둘 다 종료된 상태다. 일반적으로 ..

Database/Oracle | 2018. 9. 11. 00:30

오라클 테이블스페이스의 종류와 특징

오라클 데이터베이스는 테이블스페이스의 개념이 있다. 논리적인 저장소를 의미하는 테이블 스페이스는 데이터파일(dbf)로 구성되어 있으며, 기본적인 테이블스페이스는 각각의 역할을 갖고 생성된다. 테이블 스페이스의 종류와 특징은 아래와 같다. # 도움이 될만한 포스팅 -. 오라클 서버의 기동 단계(서버 상태): http://wookoa.tistory.com/384 # SYSTEM Tablespace Data dictionary 정보들이 저장되어 있기 때문에 해당 테이블스페이스가 손상될 경우 오라클 서버는 정상적으로 구동되지 않는다. Data dictionary는 오라클 서버와 관련된 모든 정보를 저장하고 있는 핵심적인 Table, View를 의미한다. Data dictionary는 변경된 내용이 실시간으로 반..

Database/Oracle | 2018. 9. 10. 00:30

오라클(Oracle) DECODE 함수 사용방법

고급 데이터베이스 중 하나인 오라클은 특수한 함수를 제공한다. 개발자가 조금 더 쉽고 편하게 데이터베이스를 다루며 조금 더 좋은 성능을 위해 제공되는 함수들이다. 본 포스팅에서는 오라클에서만 사용 가능한 DECODE 함수를 사용해 볼 것이다. # DECODE 함수 -. 다양한 언어에서 사용되는 IF-THEN-ELSE 논리와 비슷한 방식으로 표현식을 디코딩 한다. -. DECODE 함수는 expression을 각 search 값에 비교한 후에 디코딩 한다. -. 표현식이 search와 동일하면 result 값이 반환된다. -. default 값이 생략된 경우, search 값과 일치하는 값이 없으면 null 값이 반환된다. # DECODE 함수의 사용 아래의 SQL 문에서는 job_id 값이 테스트 된다...

Database/Oracle | 2018. 5. 8. 00:03