Choose a default theme

You can change your theme from the menu

MariaDB

MariaDB는 MySQL에서 갈라져 발전한 관계형 데이터베이스 서버이다. SQL을 통한 데이터 정의·조회·갱신을 제공하며, 서버 기능과 저장 엔진을 구별해서 이해해야 한다. MySQL과 관련이 깊지만 별개의 제품과 릴리스 체계를 가진다.

분야

관계형 데이터베이스 서버

서버와 저장 엔진

응용 프로그램은 연결과 SQL을 통해 서버를 사용하고, 저장 엔진은 테이블 데이터를 다루는 하위 계층을 맡는다. 테이블의 엔진에 따라 트랜잭션과 저장 기능의 지원 범위가 달라질 수 있다. 서버 이름만 보고 모든 테이블의 동작이 같다고 판단하지 않는다.

MySQL과의 호환성

호환성은 접속 프로토콜, SQL 문법, 자료형과 함수, 관리 명령, 복제와 파일 형식 등 여러 층에 걸쳐 있다. 한 클라이언트로 접속이 된다는 사실은 모든 쿼리와 운영 도구가 동일하게 동작한다는 뜻이 아니다. 비교할 때는 MariaDB와 MySQL 양쪽의 구체 버전을 명시한다.

데이터베이스

관계형

MySQL · PostgreSQL · MariaDB · SQLite

NoSQL

Redis · MongoDB · Apache Cassandra

스토리지 엔진

InnoDB · RocksDB · MyRocks

이전 검토 예시

회원 서비스의 데이터베이스를 바꾸는 경우 스키마와 데이터 적재 성공만 확인해서는 부족하다. 로그인에 쓰는 문자열 비교, 중복 검사, 날짜 변환, 동시 갱신, 백업 복원까지 대표 작업을 실행해 본다. 문자 집합과 정렬 규칙의 차이는 사용자에게 보이는 결과를 바꿀 수 있다.

관련 기술

InnoDB와 MyRocks는 서버 전체의 다른 이름이 아니라 저장 엔진이다. 특히 MyRocks의 포함 여부와 지원 범위는 배포판과 버전에 따라 확인해야 한다. 새 버전의 기능이 이전 버전에도 존재한다고 가정하지 않고 해당 릴리스의 문서를 사용한다.

참고 자료