본문 바로가기

Programming

라즈베리파이로 집에서 서버 구축하기 4. MariaDB 설치

1. MariaDB 설치

MariaDB는 MySQL의 포크 DB입니다. 한 때 오픈소스 DB의 대명사나 마찬가지였던 MySQL이 오라클에 인수되면서, 이에 대한 반발로 생겨난 진정한 오픈소스 DB죠. 애초부터 MySQL과의 호환성을 염두에 두고 만들었기에, 설치 후에 MySQL 쓰듯이 사용하면 거의 100% 모든 것이 다 호환됩니다.

MariaDB 설치 방법은 여러가지가 있습니다. 직접 소스를 받아서 build해도 상관 없고, 패키지 매니저로 받아도 됩니다. 그런데 전자는 한번 시도해봤었는데 생각보다 build할 때 자원 소모량이 좀 됩니다. aws 상에선 제대로 빌드가 되지 않아서 결국 apt-get으로 받았습니다.

설치 영상 들어가겠습니다.

$ apt-cache search mariadb
$ sudo apt-get install mariadb-server
$ sudo service mysqld start
$ sudo mysql -u root

apt-cache로 먼저 관련 패키지가 있는지 알아본 뒤, sudo apt-get install mariadb-server로 설치해줬습니다. 앞서 말했듯이 전 재설치라서 뜨진 않았습니다만, 원래는 설치할 거냐고 묻습니다. y로 넘어가시면 되고, sudo apt-get install -y mariadb-server를 사용하면 바로 설치가 가능합니다. 설치 전에 apt-get update 해주시는 거 잊지 마세요.

2. root 로그인 방식 및 비밀번호 변경

mariaDB의 기본 설정이 바뀐 것인지, root 계정이 원래 알던 방법으로 로그인이 안 되더군요. 찾아보니 root 로그인 방식이 via unix_socket으로 되어있던데데 이 부분을 해결하면 기존과 같이 패스워드로 접속할 수 있습니다.

sudo mysql -u root

초기 상태에선 위 명령어를 이용하면 mariaDB에 접근이 가능합니다. 이후

grant all privileges on *.* to 'root'@'localhost' identified by 'password';

명령어를 수행해주면 root 계정에 패스워드가 부여되고, 로그인 방식도 패스워드를 이용한 로그인으로 바뀝니다.

그리고, 예전엔 mariaDB를 설치하면 charset이랑 collation이 Latin으로 설정되어서 문자셋을 다시 설정해줘야하는 귀찮음이 있었는데, 이번엔 utf8m4로 설정이 되어있었습니다. 덕분에 my.cnf 파일을 수정해야 할 수고는 줄였습니다.

  • 붐업~~~!

  • 깡처리 2019.04.14 20:01 댓글주소 수정/삭제 댓글쓰기

    안녕하세요~ 코딩초보입니다.
    다름이 아니라 저도 라즈베리파이와 모바일앱을 한 공유기안의 네트워크로 연결하여 모바일로 라즈베이파이를 컨트롤하기위한 구성을 실습하고 있습니다.
    서버를 이용하는 방법을 찾아보던 중에 해당 포스팅을 보게되었는데 혹시 여기서 내용이 끝난건가요...?

    • 안녕하세요. 티스토리 문제로 답장이 늦어서 죄송합니다. 해당 포스팅은 여기서 끝은 아닙니다, 제가 삘 받을때에만 몰아서 작성하고 무기한으로 쉬는 나쁜 버릇이 있어서 이렇게 어중간하게 끝났는데, 앞으로도 연재는 계속할 생각입니다.
      다만 원하시는 내용을 제가 보여드릴 수 있을지는 잘 모르겠습니다. 작년에 아두이노-라즈베리파이-웹서버 셋을 서로 연동하여 작동시키는 프로젝트를 한 적이 있어서 향후 글에도 포함시킬 예정이긴 합니다.

  • jhj 2019.10.01 13:31 댓글주소 수정/삭제 댓글쓰기

    서버 만드는게 이게 끝인가요?

  • 사람 2019.11.17 03:19 댓글주소 수정/삭제 댓글쓰기

    다음글도 올려주세요! ㅠㅠ

  • 유제환 2019.12.09 15:57 댓글주소 수정/삭제 댓글쓰기

    와... mysql 접속이 안되서 겁나 해맸는데 초기 설정이 sudo로만 들어갈 수 있는거였다니... 난 무엇을 도대체 한것인가;;; 감사합니다.

  • 유제환 2019.12.09 15:58 댓글주소 수정/삭제 댓글쓰기

    privilges => privileges 로 수정해주세요~