버전 비교

  • 이 줄이 추가되었습니다.
  • 이 줄이 삭제되었습니다.
  • 서식이 변경되었습니다.

MySQL의 논리적 아키텍처

Image Removed
크게 3개의 층으로 나뉘어 있는 형태. 클라이언트 -> 핵심 엔진들 -> 스토리지 엔진으로 이어진다. 

Image Added

  • 클라이언트는 -> DB서버 그 자체가 아닌, 더 앞단에 위치하고 있는, 웹서버나 사용자 접속 툴등 DB로 접속해 들어오는 부분을 뜻한다. 즉, 클라이언트는  MySQL 서버 그 자체의 동작 방식과는 아무런 상관이 없다. 다만 MySQL에서 제공되는 접속 방식을 통해 접속해야 하므로 MySQL 아키텍처의 일부라 할 수도 있겠다.
  • 핵심 엔진들은 -> 연결된 사용자로부터, 쿼리를 전달받고, 분석하여, 어떻게 동작할 것인지 결정 짓고, 실제로 작동하여 결과를 얻어내는 등의 일련의 과정들을 의미한다. 
  • 스토리지 엔진은 -> MySQL에 데이터가 저장되고 검색되는 방식을 결정 짓는다. 이는 MySQL 핵식 엔진들과는 별개로 동작하며 Pluggable하다. 즉, 사용자가 직접 스토리지 엔진을 작성하여 추가한다거나, 3rd 파티 스토리지 엔진등을 구비하여 사용할 수도 있다는 것이다. 다시 말하자면, 스토리지 엔진은 단 한가지만 존재하는 것이 아니며, 또 MySQL 인스턴스에 꼭 하나의 스토리지 엔진만을 사용하지 않아도 된다. 테이블 마다 다 다른 스토리지 엔진을 사용해도 무방하다. 어떠한 스토리지 엔진을 상용하는지에 따라 제공되는 기능이 크게 달라지게 된다.

...