본문 바로가기

일상

MySQL [개요]

반응형

관계형 데이터베이스 관리 시스템(RDBMS) 중에 Oracle, MSSQL 등이 있지만, 그중 빠질 수 없는 MySQL에 대해서 알아보겠습니다.

MySQL 로고 이미지

 

MySQL이란?

1995년에 발표된 오픈 소스 DBMS. '마이에스큐엘'이라고 읽는다. 'SQL'을 '스큐엘'이나 '피쥐'로 읽는 PostgreSQL과는 달리 MySQL은 SQL을 '에스큐엘'로 끊어서 읽는게 공식으로 정해진 발음이다.

제작사는 MySQL AB이다. 이 회사는 썬 마이크로시스템즈에게 10억 달러에 인수되었는데, 이후 2010년 오라클이 썬을 72억 달러에 인수하면서 같이 넘어갔다. 따라서 MySQL의 실질적인 소유주는 오라클이다. 그런데 오라클은 자체 상용 DBMS인 오라클 데이터베이스를 가지고 있고, 오픈 소스에 대해 호의적이지 않은데다 프로그램이 갈수록 복잡해지고 있어서 MySQL 사용자들 사이에서도 불안감이 커지고 있다.

그래서 오픈 소스 진영에서 MySQL을 모태로 MariaDB라는 DBMS를 만들었다. 리눅스 배포판 중 페도라와 오픈수세는 MySQL을 버리고 MariaDB를 장착했다. 기사1 기사2 애플은 OS X 서버 버전에서 MySQL을 버리고 PostgreSQL을 채용했다.

출처 : 나무위키(namu.wiki/w/MySQL)

현재 시점으로는 '8.0.20' 버전까지 나와있습니다.

MySQL 라이센스

라이선스는 제품 종류에 따라 GPL과 자체적인 상용 라이선스 두 가지가 적용된다.

제품 종류는 무료와 유료로 나뉘는데, 무료 버전은 커뮤니티 에디션(Community Edition)이라는 이름이고, "영리 목적"으로 사용하려면 유료 버전을 써야 한다. 유료 버전의 가격은 2,000~10,000달러 사이이다. 무료 버전은 GPL이 적용되어 있어 소스 코드 수정 시 수정된 코드를 공개해야 하지만, 유료 버전은 자체 상용 라이선스이기 때문에 소스 공개의 위험이 없다. 대신 유료 버전은 고객 지원을 빵빵하게 해주지만 무료 버전은 안 해 준다.

하지만 무료 GPL 버전도 개인이 사용하는 데는 전혀 문제가 없고, 기업이 사용하는 일반적인 목적에도 사실상 문제가 없다. 여기서 말하는 "영리 목적"이란 MySQL 소프트웨어를 가져다가 대폭 수정해서 고객에게 납품하는, 즉 "배포하는" 경우에 수정한 내용의 소스를 공개하지 않는 목적을 말하는 것이지, 기업에서 일반적인 인터넷 서비스를 만들 때 사용하는 "영리" 목적을 가리키는 게 아니다. 인터넷 서비스 회사 같은 경우 보통 서비스에서는 소프트웨어를 수정했든 안 했든 소프트웨어는 서버에서 돌아갈 뿐이지 직접 배포되지 않기 때문에 GPL 버전을 사용해도 소스를 공개할 필요가 없기 때문이다. GPL은 소프트웨어를 배포할 때 소스를 같이 배포하는 게 조건이지 인터넷 서비스처럼 서버 입/출력만 외부에 공개되는 경우에는 소스를 배포하라는 제약이 없다. 하지만 종종 오라클이나 오라클의 리셀러들은 고객에게 이런 사실을 정확히 알리지 않은 채 "영리 목적"으로는 유료 버전을 써야 한다고 공포 마케팅을 벌리고는 하는데 사실과 다르다. 보통 그들도 GPL이 정확히 어디까지 허용하는지 모른다.

커뮤니티 버전과 상용버전의 차이는 기술지원에만 있는 것이 아니다. 상용 버전에는 Standard, Enteprise, Cluster 세가지 제품이 있으며, 백업, 모니터링, HA등의 기능을 사용하려면 상용버전을 구매해야 한다.


출처 : 나무위키(namu.wiki/w/MySQL)

일반 사용자나 회사에서 자체적으로 사용하는 프로그램같은 경우에는 무료지만, 영리적인 목적으로 무조건 MySQL을 탑재시켜서 사용할 경우에는 라이센스를 구매해야 한다고 하네요.

 

RDBMS 점유율

https://db-engines.com/en/ranking

 

2020년 9월 시점으로는 RDBMS 3대장 중 2위에 머물러 있지만, 1위인 Oracle과 차이가 별로 나지않을 정도로 점유율이 상당합니다.

 

여기까지 읽어주셔서 감사합니다!

반응형