RDB

MySQL vs MariaDB

hs-archive 2024. 1. 18. 23:43

MySQL

MySQL은 세계에서 가장 많이 쓰이는 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 오라클이 관리 및 지원하고 있으며, 이중 라이선스가 적용됩니다. 하나는 GPL이 적용되는 무료 버전이고 다른 하나는 유료 상용 라이선스 버전입니다.

 

무료 버전과 유료 버전 모두 필요시 소스 코드를 고쳐 쓸 수 있지만, 무료 버전의 경우 소스 코드 수정 후 고객에게 "납품"을 하면 해당 수정된 MySQL 코드를 공개해야 합니다. "납품"하는 것이 아니고 "자체적으로 사용"하는 경우에는 소스 코드를 수정하더라도 소스 코드를 공개하지 않아도 됩니다. 이 부분이 약간 헷갈린 데 예시를 들면 아래와 같습니다.

 

MySQL Community Server를 사용하여 웹사이트를 운영할 경우: GPL 라이선스 된 SW를 사용하여 구축한 서버이지만 웹서비스 제공의 형태이므로 라이선스 의무 사항(소스코드 공개)이 적용되지 않습니다. 단, 시스템 자체를 외부에 판매(혹은 배포)할 경우에는 의무 사항(소스코드 공개)이 발생하게 되며, 필요시 Enterprise Edition을 구매해야 합니다. 

 

MySQL이 사용자 컴퓨터에 설치되어야 하는 SW를 개발할 경우: 사용자가 SW 설치 시 사용자의 추가 action에 의해 Community Server가 설치되도록 개발하여 배포할 경우에는 라이선스 의무 사항이 적용되지 않습니다. 단, 응용 SW와 MySQL이 패키징되어 있다면 라이선스 의무 사항(소스코드 공개)이 발생하게 됩니다.

링크 참조

 

MariaDB

MariaDB는 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)입니다. MySQL과 동일한 소스 코드를 기반으로 하며, MySQL의 무료 버전과 동일한 GPL v2 라이선스를 따릅니다.

 

MySQL과 동일한 소스 코드 기반이어서 MySQL -> MariaDB로의 마이그레이션이 비교적 간단합니다. 

 

MySQL vs MariaDB

속도 및 성능

속도 및 성능 관점에서 현재 MariaDB는 쿼리 수행 및 복제 작업 처리 속도가 더 빠릅니다.

 

스토리지 엔진

데이터베이스 관리 시스템에서 스토리지 엔진은 데이터베이스 내의 데이터를 검색, 업데이트 및 저장하는 데 도움을 주는 구성 요소입니다. 사용하려는 스토리지 엔진이 데이터베이스 결정에 영향을 미칠 수 있습니다.

 

MySQL과 MariaDB 모두에서 여러 스토리지 엔진을 사용할 수 있지만 MySQL은 제공하는 옵션이 더 적습니다. MySQL의 스토리지 엔진으로는 InnoDB, CSV, Federated, MyISAM, Merge 등이 있습니다. MariaDB는 XtraDB, Aria, InnoDB, MariaDB ColumnStore, Memory, Cassandra, Connect 등 MySQL에서 지원하지 않는 몇 가지 스토리지 엔진을 지원합니다.

 

기능

MariaDB는 MySQL보다 다양한 기능을 제공합니다.

링크 참조

 

결론

버전에 따라 차이가 있겠지만 일반적으로 속도 및 성능, 스토리지의 다양성, 다양한 기능 등 여러 측면을 고려했을 때 MariaDB를 사용하는 것이 좋아 보입니다.

 

 

 

 

 


https://mariadb.com/kb/en/incompatibilities-and-feature-differences-between-mariadb-11-3-and-mysql-8-/

 

Incompatibilities and Feature Differences Between MariaDB 11.3 and MySQL 8.0

List of incompatibilities and feature differences between MariaDB 11.3 and MySQL 8.0.

mariadb.com

https://mariadb.com/resources/blog/mariadb-5-3-optimizer-benchmark/

 

MariaDB-5.3 optimizer benchmark | MariaDB

When I published the MariaDB-5.3.4 sysbench results I said “if your workload includes complex (sub)queries, then you will probably benefit more from MariaDBs new optimizer features”.

mariadb.com

https://aws.amazon.com/ko/compare/the-difference-between-mariadb-vs-mysql/

 

MariaDB와 MySQL 비교 - 오픈 소스 관계형 데이터베이스 간의 차이점 - AWS

MySQL과 MariaDB는 모두 오픈 소스 데이터베이스 기술입니다. 이들 데이터베이스를 사용하여 행과 열이 있는 표 형식으로 데이터를 저장할 수 있습니다. MySQL은 가장 널리 채택된 오픈 소스 데이터

aws.amazon.com

https://loosie.tistory.com/366#mysql

 

[Database] MySQL과 MariaDB 무엇이 더 좋을까?

MySQL 90년대 중반에 개발된 MySQL은 시장에서 사용할 수 있는 최초의 오픈 DB중 하나이며 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템(RDBMS: Relational DBMS)이다. MySQL은 단순 쿼리 처리

loosie.tistory.com

https://devocean.sk.com/opensource/techBoardDetail.do?ID=193

 

MySQL 오픈소스 라이선스 종류와 상용 SW에 적용하는 방법

 

devocean.sk.com

https://ko.wikipedia.org/wiki/MySQL

 

MySQL - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. MySQL(마이에스큐엘, )[2]은 세계에서 가장 많이 쓰이는[3] 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다.[4] 다중 스레드, 다중 사용자, 구조질의어 형

ko.wikipedia.org

https://ko.wikipedia.org/wiki/MariaDB

 

MariaDB - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. MariaDB는 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다. MySQL과 동일한 소스 코드를 기반으로 하며, GPL v2 라이선스를 따른다. 오라클 소유의 현재 불

ko.wikipedia.org

https://github.com/mysql/mysql-server?tab=License-1-ov-file

 

GitHub - mysql/mysql-server: MySQL Server, the world's most popular open source database, and MySQL Cluster, a real-time, open s

MySQL Server, the world's most popular open source database, and MySQL Cluster, a real-time, open source transactional database. - GitHub - mysql/mysql-server: MySQL Server, the world's mos...

github.com

https://github.com/MariaDB/server?tab=GPL-2.0-1-ov-file

 

GitHub - MariaDB/server: MariaDB server is a community developed fork of MySQL server. Started by core members of the original M

MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stab...

github.com

 

'RDB' 카테고리의 다른 글

postgreSQL - 트랜잭션 격리 수준  (2) 2023.12.05
이미지는 어디에 저장해야 할까  (2) 2022.06.22
mariaDB json value값만 가져오기  (0) 2021.07.21