왜 MySQL인가

2024년 2월 2일 작성

Real MySQL 1

안녕하세요 MySQL 입니다.

MySQL은 현재 오픈소스 데이터베이스. 다만 처음부터 오픈소스는 아니었다고 한다.

  1. 1979년 TcX 라는 회사에서 터미널 인터페이스 라이브러리를 만들었다.
  2. 1994년 웹 시스템의 데이터베이스로 사용하기 시작하며 MySQL 1.0이 만들어짐
  3. 이후 사내에서만 사용되다
  4. 1996년 일반인에게 공개
  5. 2000년 MySQL을 개발한 TcX 중심인물들이 MySQL AB라는 회사로 독립하며 FPL(Free Public License) 정책으로 바뀜
  6. 2006년 두가지 라이선스 정책을 가지게 됨. (엔터프라이즈 에디션, 커뮤니티 에디션)
  7. 이후에 썬마이크로시스템즈에 인수, 또 다시 그 후에 오라클로 인수

MySQL 라이선스

엔터프라이즈 에디션과 커뮤니티 에디션의 소스코드는 모두 오픈소스였다. 5.5 이전까지는 별 차이가 없었으나 (엔터프라이즈가 패치 버전이 자주 릴리즈 되는 정도) 2011년 2월 5.5버전부터 엔터프라이즈 에디션의 소스코드가 공개되지 않도록 바뀌었다. (커뮤니티는 계속 오픈소스)

MySQL의 성장

오라클로 인수된다고 했을 때 사람들은 MySQL이 시장에서 사라질 거라 예상

하지만 오라클로의 인수 후

  • MySQL 서버의 소스코드 레벨부터 리팩토링 시작
  • 5.5 ~ 5.7 버전에서는 안정성 + 성능 개선에 집중
  • 8.0 버전부터는 상용DBMS 의 기능들이 장착되기 시작

저자는 오라클 인수 후 10년이 MySQL 역사상 가장 큰 변화의 시기로 본다고 한다.

왜 MySQL을 선택할 수 있는걸까

이 책의 1.2절은 다른 DBMS와 비교할 때 MySQL의 경쟁력은 무엇이고 왜 사용해야하는지에 대한 내용이다.

3V 시대. 보관해야하는 데이터의 양은 기하급수적으로 늘어나고 있다. 따라서 상대적으로 저렴한 MySQL은 경쟁력을 가질 수 있다는 말인 것 같다. 그래서, 단지 어떤 DB를 사용해야하는가? 라고 묻는다면, 꼭 MySQL 일 필요는 없다고 하며, 다음과 같이 선택의 기준을 제시했다.

  • 안정성
  • 성능과 기능
  • 커뮤니티나 인지도

참고로 저자는 위 셋 중에서 안정성이 제일 우선된다고 보는데, 그 이유는 성능과 기능은 돈이나 노력으로 해결할 수 있지만 안정성은 그렇지 않기 때문이라고 했다.

또한 데이터베이스를 선택할 때 참고해볼만한 지표를 소개해줬다.

DB-Engines.com에서 순위를 만들기 위해서 점수를 부여할때 사용한 기준은

website mentions, search frequency, technical discussion frequency, current job offers, professional network profiles

등이라고 한다. 사실 저자가 얘기한 세가지 기준보다는 DBMS별 활용도로 순위를 매긴거라 볼 수 있다. 근데 활용도에는 저자가 말한 기준들이 전부 반영되어있다고 볼 수 있다고 말한다. 안정성이나, 기능, 성능에 문제가 있음에도 DBMS를 억지로 사용하는 경우는 없을 것이니 어느 정도 검증된 근거가 될 수 있는 것이다.

따라서, 위 순위를 봤을 때 MySQL 서버는 충분히 좋은 선택지라고 볼 수 있다. 게다가 MySQL 서버는 오픈소스(엔터프라이즈도 저비용)인 점에서 상위에 위치한 오라클보다 더 매력적인 선택이 될 수도 있다.


1장은 가벼운 내용이었다.

사실 저자가, MySQL을 택해야하는 이유가 안정성이라고 하긴 했지만 아직 안정성에 대한 자세한 이야기는 나오지 않은 것 같고, 5.5~5.7 까지 안정성과 성능개선을 위해 노력했다 했으니 이 부분을 궁금해하며 잘 읽어보면 좋을 것 같다.