DB

[DB] MySQL와 MariaDB

인생은단짠단짠 2022. 12. 2. 14:41

 

최근 jpa를 공부하기 위해 MySQL을 연동해야 했었다. 

DataSource는 MySQL을 선택하고 ID 와 PW를 입력했으나 아래의 에러가 떴다.

Access denied for user '유저아이디'@'localhost' (using password: YES)

 

아이디와 비밀번호가 맞는지 계속 확인하고, 비밀번호를 변경해보고, 계정 권한을 설정하는 등의 다양한 방법을 시도해봤으나 해결되지 않았다. 구글링하며 나오는 방법들 대부분을 시도했을 쯤.. 기존의 MySQL과 충돌이 나면서 로그인이 안된다는 글을 보게되었고 예전에 bitnami를 설치했었던 기억이 나 bitnami에 접속하여 실행중이던 MariaDB를 실행종료했다.

그러니 바로 며칠동안 연동이 되지 않던 MySQL을 연동할 수 있었다. (자세한건 이글 참고 - https://jisoooit.tistory.com/148

 

 

여기서 나는 의문이 생겼다. MariaDB를 종료하니까 MySQL이 연동이 된다고?

MySQL과 MariaDB는 같은건가? 무슨 연관이 있는거지? 

그래서 이 둘의 관계를 찾아보고 글을 쓰게 되었다.

 

 


 

MySQL와 MariaDB의 연관성

 

 

MariaDB설치 파일에 들어가보면 MySQL관련 파일들이 많다.

 

 

 

MariaDB공식 홈페이지에 들어가보았다. 

MariaDB는 MySQL의 발전된 형태의 대체제로써, GPL v2 라이센스로 유지되고 있고, MariaDB 커뮤니티와 MariaDB 재단이 주축이 되어 개발되고 있다.

MariaDB 는 현재까지 최신의 MaySQL 과 같은 브랜치로부터 릴리즈되며, 대개의 경우 MySQL과 마찬가지로 동작한다. MySQL의 모든 명령어, 인터페이스, 라이브러리와 API 가 MariaDB 에도 존재한다. 또한 MariaDB 로 데이터베이스를 변환할 필요도 없다. 즉, MariaDB 는 사실상 MySQL 의 완벽한 대체제 라고 말할 수 있다! 게다가, MariaDB 는 많은 보다 훌륭한 새로운 기능들을 갖고 있다.

 

찾아보니... MySQL 은 오라클 사에 인수되었고, 일부 기능이 유료화 되었다. 

그래서 기존 MySQL 개발자인 몬티라는 분이 MySQL 을 fork 하여(떠와서) 약간의 어레인지를 하여 만든 새 데이터베이스가 MariaDB 라고 한다.  MySQL을 기반으로 fork한 서비스인 만큼, MySQL 서버에서 사용되는 데이터 파일과 서로 호환이 가능하다.

 

 

MySQL vs MariaDB, 어떤 것을 사용해야 할까?

 

 

사용법은 비슷하지만,  MariaDB는 MySQL 대비 더 좋은 장점이 있다. 

  • 동일 하드웨어 사양으로 MySQL보다 향상된 성능
  • 오픈소스이고, 좀 더 활성화된 커뮤니티
  • 다양한 기능
  • 다양한 스토리지 엔진
  • 빠르고 투명한 보안패치 릴리즈

 

 Mysql은 가장 널리 사용되고 있는 DB이고 많은 유저 경험과 레퍼런스가 있다는 장점을 가지고 있다. 

 

 

MariaDB는 오픈소스이기 때문에 기업에 인수된 MySQL보다 정책적인 면에서 더 안정적이고 업데이트도 활발하다. 그리고 MariaDB는 MySQL을 fork한 서비스라서  어떻게 보면 많은 유저 경험과 레퍼런스가 있다는 MySQL의 장점이 MariaDB의 장점에 포함된다고 볼 수 있다. 

 

따라서 MariaDB를 사용하는 것이 더 좋을 것 같다. 

'DB' 카테고리의 다른 글

[DB] MySQL와 인텔리제이 연결 오류  (0) 2022.12.02