[CentOS 6.x] APM컴파일 설치 방법 3. MariaDB 설치

글쓴이 Engineer Myoa 날짜

현재는 mysql이 오라클에 인수되어 유료화 되었고,

분노한 유저들이 오픈소스에 프리라이센스를 그대로 이어간 mariadb를 많이 이용합니다.

하지만 여전히 구형 패키지들은 설정파일에 mysql이라고 명시를 많이 해둡니다.

따라서 우리도 설치할 때는 호환성을 위해 path prefix를 mysql로 지정할 것입니다. (실제 데몬 바이너리도 mysql입니다)

 

1. 사전패키지설치하기

$ yum install cmake ncurses ncurses-devel bison

// 만약 gcc, gcc-c++이 없다면 같이 설치합니다.

 

2. MariaDB 다운

https://downloads.mariadb.org/

에서 Source를 받습니다. (컴파일 설치는 OS 아키텍쳐를 따지지 않습니다.)

$ wget -O mariadb.tar.gz https://downloads.mariadb.org/interstitial/mariadb-10.1.20/source/mariadb-10.1.20.tar.gz/from/http%3A//ftp.kaist.ac.kr/mariadb/

//혹은

$ wget https://downloads.mariadb.org/interstitial/mariadb-10.1.20/source/mariadb-10.1.20.tar.gz/from/http%3A//ftp.kaist.ac.kr/mariadb/

$ mv index.html mariadb.tar.gz

$ tar -xvzf mariadb.tar.gz
$ cd mariadb

만약 index.html로 받아진다면 mv로 이름바꿔주세요.

 

3. MariaDB 컴파일 설치

http://88oy.tistory.com/383

님의 글을 인용합니다.

$ cmake -DWITH_READLINE=1 -DWITH_READLINE=1 -DWITH_SSL=bundled \
-DWITH_ZLIB=system -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=all -DWITH_ARIA_STORAGE_ENGINE=1 \
-DWITH_XTRADB_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATEDX_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DCMAKE_INSTALL_PREFIX=/usr/local/mariadb -DMYSQL_DATADIR=/var/mysql
$ make

$ make install

설치시에 시간이 오래걸립니다. 저사양 서버기준 1시간 30분걸렸고,

구형 SSD, 1 core, 1GB 램 시스템의 가상 테스트 서버에서 36분걸렸네요.

 

데몬과 설정을 복사합니다.

$ cp /usr/local/mariadb/support-files/mysql.server /etc/init.d/mysqld
$ cp /usr/local/mariadb/support-files/my-innodb-heavy-4G.cnf /etc/my.cnf

 

Base DB를 구축합니다.

$ /usr/local/mariadb/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mariadb --datadir=/var/mysql

 

mariadb 설치폴더를 mysql계정에게 귀속합니다.

chown mysql:mysql /usr/local/mariadb -R

mariadb 관리자계정 비밀번호를 설정합니다.

$ mysqladmin -u root password '비밀번호'

 

마지막으로 데몬을 시작합니다.

$ service mysqld start

 

에러없이 다음과같이 나왔다면 성공입니다.

Starting mysqld: [ OK ]

 

 

수고하셨습니다.

카테고리: UNIX/LINUX

6개의 댓글

답글 남기기

Avatar placeholder

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다