본문 바로가기

Oracle/Oracle Admin

Database Oracle Administration_Oracle Server 전체 구조

Step 1. Oracle Server 전체 구조 살펴보기

- Sub : Oracle Server 전체 구조

 

드디어 Oracle Admin에 들어왔습니다!! 얼마만에 Admin을 제대로 다루는 건지도 모르겠네요..;;

Admin은 처음부터 무쟈게 어렵기 때문에 잘 따라오고 이해도 잘 해야합니다.

Admin의 기초는 DBMS는 무엇이며 Oracle을 왜 공부해야하는가? 라는 것부터 시작하겠습니다.

 

Oracle이란? 부터 시작!ㅎ

 

 

구글에서 따다가 만든 그림..ㅎㅎ 출처는 모릅니다; 한방향만 그려져 있지만 양방향..ㅎ 수정하기 전에 제가 파워포인트를 닫아버려서;;

설명을 하자면 Client가 Database에 있는 글을 보려고 합니다. 하지만 직접 Database에 접촉을 할 수도 없을 뿐더러 Database에는 너무너무많은 데이터가 쌓여있는 창고의 형태이기 때문에 데이터를 찾기란 너무 어렵습니다. 그렇기 때문에 DBMS(DataBase Management System)을 쓰는 것이죠. 이전에도 말했듯이 DBMS의 종류는 많습니다. 하지만 가장 위에 있고 오랫동안 시장을 점유한 Oracle이 가장 대표적이며 DB2, MS-SQL 등이 있습니다. Oracle은 기술을 가지고 있는 회사를 사면서 회사를 점점 더 넓히는 회사로 Sun도 Oracle이 인수를 해서 관리를 하고 있습니다. 이런 괴물~ㅎ Oracle을 선호하는 이유중 또 한가지는 복구력. 어느 데이터든지 복구를 할 수 있다는 크나큰 장점이 있습니다. 다른 DBMS들도 복구는 가능하지만 Oracle만큼의 성능을 발휘하지는 못한다고해요. 그만큼 Oracle이 대단하고 또 그만큼 구조가 복잡하다는 겁니다. 그 구조를 다 파악을 해야 복구, 성능최적화, 운영이 가능한 것이죠.

Client가 DBMS에게 요청하는 언어의 종류는 뭘까요? 네~ 아시는 분도 있네요 ㅎㅎ 혼잣말 하기도 참..ㅎㅎㅎ

SQL입니다. 질의문을 가지고 DBMS와의 소통을 하고 DBMS는 Client가 요청한 정보를 Database로 가서 가져오고 다시 Client에게 주는 역할을 합니다. SQL을 잘 쓴다는 것은 그만큼 중요하고 많이 알아야 한다는 것을 의미합니다.

DBMS는 무엇이고 Oracle이란 무엇인지 잘 아셨나요?ㅎㅎ 관계를 잘 알아야 합니다.

그리고 이제 몇가지 구조를 볼겁니다. Unix(Linux)의 구조, 컴퓨터의 구조를 볼건데요. 아주아주 Oracle과 밀접한 관계가 있습니다.

Oracle은 Unix(Linux) 혹은 Window라는 OS(운영체제)에서 동작하는 응용프로그램이기 때문에 그 사이의 관계를 이해해야하며

DBMS가 동작하는 원리는 컴퓨터가 동작하는 구조의 원리와 비슷하기에 그것또한 보도록 하겠습니다.

 

 

이렇게가 컴퓨터의 일반적인 시스템구조와 하드웨어 구조입니다. 어떤가요? 어려운 용어들이 잔뜩잔뜩

하지만 따지고 보면 그렇게 어렵지만도 않은게 컴퓨터의 구조입니다. 일반적으로 우리가 쓰는 디스크가 뭐죠? 하드디스크!

하드디스크를 다른말로 보조기억장치라고 하고 RAM을 주기억장치라고 합니다. 왜 이런 용어로 나누게 되었을까요?

RAM은 처리속도가 빠르지만 휘발성입니다. 하지만 HDD. ROM인 보조기억장치는 속도가 매우느리고 비휘발성입니다.

처리는 RAM에서 하고 용량이 너무 크기 때문에 ROM인 하드디스크에 저장하는 방식! 이것이 바로 보조/주의 구분입니다.

HDD가 아무리 빨라져서 SDD가 된다고 하더라도 절대로 RAM을 따라갈 수없습니다. 이건 분명하죠.

컴퓨터를 살때 흔히 RAM을 많이 따지게 됩니다. 그건 RAM에서 실제적인 일이 처리가 되고 다시 하드디스크에 저장이 되기 때문입니다. 그리고 왔다 갔다 하는데 쓰이는것이 CPU의 클럭이죠. 그래서 처리속도를 올리기 위해서는 CPU의 처리속도와 RAM이 중요합니다.

이러한 구조를 잘 이해를 하면 Oracle을 잘 이해할 수 있을 겁니다. 왜냐하면 Oracle도 이러한 구조로 되어 있거든요 ㅎ

컴퓨터의 구조를 봤으니 Unix의 구조를 볼까요?ㅎ Unix의 구조는 아주아주 간단합니다.

 

 


이것이 바로 Unix의 구조! 양파껍질처럼 겹겹이 쌓여있죠?ㅎ 이게 특징입니다.

여기에서의 중요한 것은 Hardware와 맞닿아 있는 Kernel이라는 놈이에요. Kernel을 통해서만 Hardware와 접근을 할 수 있기 때문에 이전에 우리가 설치를 할때 Kernel 파라미터 파일을 건드린 적이 있을겁니다. 기억이 나시나요?ㅎ Linux의 경우도 Unix와 구조가 같습니다. Linux에서 /etc/sysctl.conf를 건드린 기억이 나죠?ㅎ 그게 바로 Kernel의 파라미터입니다. 커널이 OS의 파일을 보고 하드웨어의 정보를 갖다 쓰는데 그 파일이 커널 파라미터 파일입니다. 매우매우 중요한 파일이라고 할 수 있죠. 이게 없으면 제대로 동작안하는..ㅎ

그래서 보안을 할때 정말 중요한 파일이기 때문에 보안을 잘 해야하는 부분이기도 합니다. Kernel의 중요성은 아무리 강조해도 부족함이 없을 정도!ㅎ 이정도로 구조를 살펴보고 다시한번 틈틈이 보는것도 좋습니다. 기억하고 있으면 유용한 정보니까요!

이제 오라클의 구조를 한번 살펴볼까요?ㅎ

 

이것이 간단한 Oracle의 구조입니다. 크게는 Instance와 Database로 나누어지는 Oracle!!

위 큰제목으로 Oracle Server의 전체구조라고 하는데 Oracle이라고 부르는 것이 Oracle Server입니다.

위그림에서 알 수 있다싶이 Instance에도 많은 구성요소가 있습니다. SGA와 Background Process로 나눠지기도 하죠!

Instance는 무엇을 하는 아이일까요? 메모리라고 생각하시면 편해요. 메모리부분에 생성되는 구조!가 바로 Instance입니다.

SGA는 그럼 무어냐~ System Gloval Area의 약자로 실제 작업들이 수행되는 공간이구요

Background Process는 Oracle Server가 잘 운영되도록 도와주는 역할을 하는 아이들입니다. 이 둘이 잘 움직여야 합니다 꼭!

여기안에 있는 내용들을 하나하나 다 이해를 하고 쓸줄 알아야 하는게 DBA이고 서로와의 관계 또한 잘 이해를 해야합니다.

그렇다고 당장 이 모든걸 외우려고 하면 큰일..ㅎ 시작부터 겁먹고 시작 못하는 것과 같죠.

수학을 하는데 처음부터 미적분을 보여주면 어떤가요? 정말 난감하고 이게 뭥미.. 하면서 포기하게 되겠죠? 차근차근 알아가면서 미적을 마스터하듯이 우리도 차근차근 하나하나 살펴가면서 Oracle에 대해 알아가도록 하겠습니다. 과유불급이라는 말이 생각나네요 ㅎ

절대로 욕심을 내면 안됩니다. 욕심내면 망하는 길!ㅎ 이후에는 Instance에 대해 자세히 알아보는 것을 하겠습니다.

Oracle의 구조에는 이러이러한게 있구나~ 하는 정도만 알면 되는 포스트입니다 ㅎ 나중에 보면 다 이해가 되니까요 ㅎㅎ

Admin 첫 포스팅 끗!