권장 MariaDB 버전은 10.2 10.3 입니다. (10.4는 현재 오류 확인 중입니다)
-
Linux
- 배포본의 저장소 및 설치 스크립트는 다음 선택 페이지의 설명을 참고하여 설치 합니다.
- Setting up MariaDB Repositories
-
Mac
- brew install 을 이용해서 설치를 권장합니다.
- https://mariadb.com/blog/installing-mariadb-10010-mac-os-x-homebrew
-
Windows
이하는 Linux/Unix 기반의 설명입니다. Windows OS 유저는 MariaDB 설치 (Windows) 를 참고해서 진행해주세요.
기본 진행 내용은 MariaDB에 root 유저로 접속한 다음 yona 유저를 만들고 DB를 만들고 해당 DB의 모든 권한을 yona 유저에게 주는 작업입니다.
MariaDB root 유저로 접속
mysql -uroot
만약 클라이언트로 접속 시도시에 아래와 같은 에러가 발생했다면
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
MariaDB 서버가 실행되지 않았기때문입니다. 이럴때는 OS에 맞게 systemd 등을 이용해 실행해 주세요
# CentOS 예
sudo systemctl enable mariadb
sudo systemctl start mariadb
yona 유저 생성. password는 IDENTIFIED BY 다음에 지정한 문자가 됩니다. 아래 예)에서는 yonadan
create user 'yona'@'localhost' IDENTIFIED BY 'yonadan';
DB 생성 UTF8 확장문자열을 저장할 수 있는 포맷으로 지정해서 생성합니다.
create database yona
DEFAULT CHARACTER SET utf8mb4
DEFAULT COLLATE utf8mb4_bin
;
yona 유저에게 yona 데이터베이스 권한 부여
GRANT ALL ON yona.* to 'yona'@'localhost';
exit
명령어로 쉘로 빠져 나온 다음 yona 유저로 정상 접속되고 yona DB가 사용 가능한지 확인해 봅니다.
참고로 -p 다음에 쓴 글자가 위에서 만든 패스워드입니다.
mysql -u yona -p'yonadan'
use yona
/etc/my.cnf 파일을 만들어서 아래 내용을 추가해 주세요. (mac os 유저의 경우에는 db 실행유저의 ~/.my.cnf에 아래 내용을 추가해 주세요) 샘플참고: https://github.com/yona-projects/yona/blob/next/support-script/mariadb/my.cnf
- Unicode 4Byte 확장 문자열을 지원하기 위해 utf8mb4를 사용하도록 되어 있습니다.
- lower_case_table_name=1 는 테이블명이나 컬럼명 조회시 대소문자를 구분하지 않도록 만드는 옵션입니다.
- collation-server 는 정렬시의 기준옵션을 설정하는 부분입니다.
# [client]
# default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init-connect='SET NAMES utf8mb4'
lower_case_table_names=1
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
# skip client char-set
skip-character-set-client-handshake
꼭 /etc 아래가 아니더라도 my.cnf 위치 탐색순서 를 보고 적당한 곳에 my.cnf 파일을 만들어서 넣어도 무방하다고 알려져 있습니다. (Mac OS 유저는 우선은 위 설명대로 해주세요. 추가 확인이 필요합니다)
이어서 설정을 적용하기 위해 MariaDB 를 재시작해주세요.
service mysql restart
이제 Yona 를 설치합니다.
-- 이하 내용은 참고용입니다 --
- application.conf 가 제대로 읽히는지
- application.conf 파일내의 application.secret 항목 적용여부
- db.default.url 확인
DB를 설치한 유저로 DB를 재시작합니다. (root나 sudo 설치했을 경우 명령어 앞에 sudo를 붙여주세요)
service mysql restart
혹은
/etc/init.d/mysql restart
혹은
mysql.server restart
참고: http://coolestguidesontheplanet.com/start-stop-mysql-from-the-command-line-terminal-osx-linux/