by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

01. MariaDB




1. MariaDB

1.1 MariaDB란?

  • MariaDB는 MySQL 커뮤니티 코드 베이스를 이용해서 탄생했다.
  • MariaDB는 Monty Program AB에 의해서 다듬어진 MySQL이다.
  • MariaDB는 오픈소스이다.
  • 참고 : Maria는 MySQL 창시자인 Monty의 둘째딸 이름이다.

1.2 MariaDB vs Mysql

1.2.1 공통점

mysql 5.x 버전과 MariaDB 5.x 버전은 명령어, 구조가 동일하며 버전 간 서로 호환된다.

구분 MariaDB Mysql
데이터베이스 서버 프로그램 mysqld mysqld
MyISAM 체크 프로그램 myisamchk myisamchk
클라이언트 프로그램 mysql mysql
서버 관리자 유틸리티 mysqladmin mysqladmin
데이터 덤프 프로그램 mysqldump mysqldump
데이터 적재 프로그램 mysqlimport mysqlimport
빌트인 백업 유틸리티 mysqlhotcopy mysqlhotcopy
스키마 업그레이드 유틸리티 mysql_upgrade mysql_upgrade
바이너리 로그 분석 프로그램 mysqlbinlog mysqlbinlog
1.2.2 차이점
구분 MariaDB Mysql
라이선스 ㅇ 서버 : GPL
ㅇ 클라이언트/라이브러리 : LGPL
ㅇ 커뮤니티 버전 : GPL
ㅇ 엔터프라이즈 버전 : 상용
스토리지 ㅇ 기본메모리 : Memory 스토리지 엔진 사용
ㅇ 내부 임시 테이블 : Aria엔진
ㅇ 트랜잭션 : XtraDB
ㅇ NoSQL 지원 : Cassandre 지원
ㅇ 기본메모리 : Memory 스토리지 엔진 사용
ㅇ 내부 임시 테이블 : MyISAM
ㅇ 트랜잭션 : InnoDB 엔진
ㅇ NoSQL 지원 : Memcached 플러그인 지원
기능 ㅇ 스레드풀 : 5.1버전부터 지원
ㅇ 버퍼풀 프리로드 : 5.5 버전 이상 지원
ㅇ SSD : 5.5 이상 버전
ㅇ 롤 기반의 권한관리 : 10.0 버전부터 지원
ㅇ 반 동기화 레플리케이션 : 미지원
ㅇ 가상컬럼 : 5.2이상 버전 지원
ㅇ 동적컬럼 : 지원
ㅇ PAM 인증 : 5.2이상 버전 지원
ㅇ 스레드풀 : 5.5 엔터프라이즈 버전에서만 지원
ㅇ 버퍼풀 프리로드 : 5.6 버전이상 지원
ㅇ SSD : 미지원
ㅇ 롤 기반의 권한관리 : 미지원
ㅇ 반 동기화 레플리케이션 : 5.5 버전이상 지원
ㅇ 가상컬럼 : 미지원
ㅇ 동적컬럼 : 미지원
ㅇ PAM 인증 : 5.5 이상 엔터프라이즈 버전만 지원
옵티마이저 ㅇ index_merge 실행계획의 sort_intersection 기능 : 지원
ㅇ 비용기반 range와 index_merge 실행계획 지원 : 지원
ㅇ 블록 해시조인 : 지원
ㅇ 서브쿼리 캐싱 : 지원
ㅇ DML 실행계획 : 미지원
ㅇ Json 포맷의 실행계획 : 미지원
ㅇ index_merge 실행계획의 sort_intersection 기능 : 미지원
ㅇ 비용기반 range와 index_merge 실행계획 지원 : 미지원
ㅇ 블록 해시조인 : 미지원
ㅇ 서브쿼리 캐싱 : 미지원
ㅇ DML 실행계획 : 지원
ㅇ Json 포맷의 실행계획 : 지원
1.2.3 버전별 호환성
MariaDB MySQL
5.1, 5.2, 5.3 5.1
5.5, 10.0 5.5
1.2.4 성능비교

시스템 구성에 따라 성능우위가 조금씩 다르게 나오고 있으니 참고만 하자.

1.2.5 MariaDB가 MySQL을 대체할까?
  • 저자는 오픈소스로 제공되는 MariaDB가 더 널리 쓰일 것으로 예상했다.
1.2.6 MariaDB와 MySQL 선택
  • 저자는 DBMS 선택 시 1.DBMS의 성능, 2.안정성, 3.DBMS기능과 유틸리티, 4.기술지원을 중요한 요소로 꼽았으며,
  • MySQL 기능 테스트 도중 발생한 여러 에러와 원인파악에 장시간이 필요함을 근거로 MySQL 서버의 코드안정성에 의문을 제기했다.
  • 반면 성능은 MariaDB와 MySQL의 차이가 미미하다고 판단하였으며
  • MySQL은 오라클과, MariaDB는 SkySQL과 계약을 통해 기술지원을 받을 수 있다고 하였다.

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.