[MariaDB] Amazon Linux 2023에 MariaDB 패키지 설치

2024. 7. 16. 18:31DB



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 
MariaDB와 mysql 차이점?
 
 

MariaDB와 MySQL은 둘 다 인기 있는 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 그러나 두 시스템 간에는 몇 가지 중요한 차이점이 있습니다. 여기에서는 주요 차이점들을 살펴보겠습니다.

기원 및 소유권

  • MySQL: MySQL은 1995년에 처음 출시되었으며, 2008년 Sun Microsystems에 인수되었습니다. 이후 2010년 Oracle Corporation이 Sun Microsystems를 인수하면서 MySQL도 Oracle의 소유가 되었습니다.
  • MariaDB: MariaDB는 MySQL의 창시자인 Michael "Monty" Widenius와 다른 MySQL 개발자들이 MySQL의 오라클 인수 이후, MySQL의 오픈 소스 가치를 유지하기 위해 2009년에 포크한 프로젝트입니다.

라이선스

  • MySQL: MySQL은 GNU General Public License(GPL)로 제공되지만, Oracle은 상업용 라이선스를 통해 추가적인 기업 기능을 제공합니다.
  • MariaDB: MariaDB도 GNU General Public License(GPL)로 제공되며, 완전히 오픈 소스로 유지됩니다. MariaDB는 상업용 버전을 제공하지 않습니다.

기능 및 성능

  • 기능 차이: MariaDB는 MySQL과의 호환성을 유지하면서도 추가적인 기능과 저장 엔진을 도입하고 있습니다. 예를 들어, MariaDB에는 MyRocks, Aria, Cassandra 등 다양한 저장 엔진이 포함되어 있습니다. 또한 JSON, GIS 기능 등이 개선되었습니다.
  • 성능: MariaDB는 쿼리 성능 최적화와 새로운 인덱싱 방법을 통해 성능 향상을 도모하고 있습니다. 특히, 대규모 데이터베이스에서의 성능을 개선하는 데 중점을 두고 있습니다.

개발 및 업데이트

  • MySQL: MySQL의 개발은 주로 Oracle에 의해 이루어지며, 주요 업데이트는 Oracle의 개발 일정에 따라 배포됩니다.
  • MariaDB: MariaDB는 커뮤니티 주도로 개발되며, 전 세계의 다양한 개발자들이 기여하고 있습니다. 따라서 더 빈번한 업데이트와 새로운 기능이 추가될 가능성이 큽니다.

호환성

  • MySQL: MariaDB는 MySQL과 호환되도록 설계되었지만, 최신 버전에서 점차적으로 차이가 생기고 있습니다. 대부분의 경우, MySQL에서 MariaDB로의 전환은 큰 문제 없이 이루어질 수 있습니다.
  • MariaDB: MySQL과의 호환성을 유지하려고 노력하지만, MariaDB는 자체적인 기능과 최적화를 통해 MySQL과 점차적으로 차별화되고 있습니다.

커뮤니티 및 지원

  • MySQL: Oracle의 소유 하에 있지만, 여전히 큰 오픈 소스 커뮤니티가 존재합니다. 상업적 지원을 포함한 다양한 지원 옵션이 있습니다.
  • MariaDB: 활발한 오픈 소스 커뮤니티가 있으며, MariaDB Foundation을 통해 공식적인 지원을 받을 수 있습니다. MariaDB Corporation은 추가적인 기업 지원 서비스를 제공합니다.

결론

MySQL과 MariaDB는 둘 다 강력한 RDBMS로서, 특정 요구사항에 따라 선택할 수 있습니다. 오픈 소스와 커뮤니티 중심의 개발을 선호하고, 더 빈번한 업데이트와 새로운 기능을 원한다면 MariaDB를 선택할 수 있습니다. 반면에, Oracle의 상업적 지원과 안정성을 중시한다면 MySQL을 선택할 수 있습니다. 두 시스템 모두 높은 성능과 신뢰성을 제공하며, 대부분의 애플리케이션에서 사용될 수 있습니다.

 

 

 

 

그러니 Amazon Linux 2023에 MariaDB를 설치

 

 

#MariaDB 설치

sudo dnf install -y mariadb105-server

 

#MariaDB 실행

sudo systemctl start mariadb

 

# 초기 설정

sudo mysql_secure_installation

 

 

# 질문공격

 

In order to log into MariaDB to secure it, ...t the root password yet, 
you should just press enter here.

Enter current password for root (enter for none): 

(방금 설치했으니 그냥 Enter)


Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n]
(unix_socket 인증으로 전환할거야? 나는 N 선택)


You already have your root account protected, so you can safely answer 'n'.
Change the root password? [Y/n]
(비밀번호 변경할거야? Yes)


New password: (비밀번호입력)
Re-enter new password: (비밀번호 또 입력)


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n]
(익명사용자는 삭제할래 YES)


Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n]
(원격 루트 허용? 루트는 보안이 생명이지 No)


By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n]
(테스트는 삭제해줘 YES)


Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n]
(리로드 해줘 YES)

 

 

# 질문공격 다 받았으면 접속 Try

mysql -u root -p

 

패스워드 입력 후 잘 접속되는지만 Check

 

 

# 서버가 재부팅 되더라도 MariaDB가 자동 재시작 할 수 있도록

sudo systemctl enable mariadb

 

'DB' 카테고리의 다른 글

[DB] mac(m1) mysql 설치(homebrew)  (0) 2024.02.13
[DB]centos 7.0이상에서 mysql 8.0 yum(패키지) 설치  (0) 2022.05.31
[MYSQL] timeout 설정  (0) 2021.02.01
[MYSQL] order by 조건  (0) 2018.07.19
[mysql] index / 인덱스  (0) 2017.01.03