1-1. MariaDB란
MariaDB는 오픈 소스 기반의 데이터베이스 관리시스템 입니다.
또한 Mariadb는 같은 데이터베이스 관리 시스템인 Mysql 과 동일한 소스코드를 기반으로 만들어졌기 때문에 Mysql 과의 호환성 또한 높고 명령어 또한 일치하는 부분이 많습니다.
또한 MariaDB 와 Mysql 버전이 호환되어 사용이 가능합니다.
MariaDB | Mysql |
5.1 | 5.2 | 5.3 | 5.1 |
5.3 | 5.5 | 10.0 | 5.5 |
최근에 배포되는 MariaDB 10 버전은 Mysql 5.6 버전과도 호환성이 있지만 호환되지 않는 기능도 있습니다.
** 설치 환경은 다음과 같습니다.
OS : Ubuntu 16.04 LTS
Apache : 2.4.18
Php : 7.0.22
Maria : 10.2.11
apache 및 php는 MariaDB 설치 후 apt-get install 로 설치 진행하였습니다.
1-2. MariaDB 10.2 설치
ubuntu 16.04 버전에서 apt-get 의 기본 패키지에서는 mariadb 5.5 버전이 설치되도록 설정되어 있습니다.
mariaDB 10 버전을 설치하기 위해서는 커널의 정보를 확인한 후 repository 수정이 필요합니다.
1) cat /etc/*release 혹은 lsb_release -a 명령어를 통해 os 버전 및 커널 정보를 확인합니다.
현재 설치를 진행하려는 ubuntu 버전은 16.04 LTS 이며 codename 은 xenial 입니다.
** 버전에 따라 repository 를 추가하는 부분도 다르기 때문에 반드시 위의 명령어를 통해
커널의 정보를 확인한 후에 진행하셔야 합니다.
버전에 따라 repository 를 수정하는 부분은 mariadb 공식사이트 를 통해서도 가능하니 참고하시기 바랍니다.
2) add-apt-repository 를 사용하기 위해 필요한 패키지를 설치합니다.
apt-get install software-properties-common
3) mariadb를 설치하기 위해 아래의 서버에서 공개 키 값을 넣어줍니다.
# apt-key adv –recv-keys –keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
4) mariadb 의 10.2 버전 설치를 위해 repository 를 변경합니다.
(명령어로 변경시)
# add-apt-repository ‘deb [arch=amd64,i386,ppc64el] http://ftp.kaist.ac.kr/mariadb/repo/10.2/ubuntu xenial main’
(apt 에 수동으로 reposiory 변경할 시 vi /etc/apt/source.list )
# deb http://archive.canonical.com/ubuntu xenial partner
deb [arch=amd64,ppc64el,i386] http://ftp.kaist.ac.kr/mariadb/repo/10.2/ubuntu xenial main
deb-src http://ftp.kaist.ac.kr/mariadb/repo/10.2/ubuntu xenial main
source 를 수정한 뒤에 변경한 repository 로 최신 패키지를 설치할 수 있도록 apt-get update를 진행합니다.
5) mariadb를 설치합니다.
apt-get install mariadb-server
mariadb 접속시 필요한 패스워드를 입력합니다.
6) mariadb 접속에 성공하면 mariadb 설치가 완료되었습니다.
# mysql -u root -p
1-3. apache 및 php 설치
1)apache 를 apt-get 으로 설치한 후 서비스 동작중인지 확인하고 아래의 페이지 출력되면 apache 설치가 완료 되었습니다.
apt-get install -y apache2
2) php 와 apache 그리고 mariadb가 연동될 수 있도록 관련 패키지들과 함께 php 를 설치함니다.
apt-get install -y php libapache2-mod-php php-xml -php-gd php-mysql
3) apache 설정파일을 수정하여 .php 확장자로 페이지 출력할 수 있도록 설정합니다.
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
4) php 페이지가 출력되는 지 확인하기 위해 phpinfo 페이지를 생성하는 스크립트를 작성합니다.
vi /var/www/html/phpinfo.php
<?php
phpinfo();
?>
5) apache 데몬을 재시작하여 위의 설정을 적용합니다.
# /etc/init.d/apache2 restart
6) 서버의 ip 입력 후 /phpinfo.php 입력시 아래와 같은 페이지가 출력되면 apm 설치가 완료되었습니다.
1-4. 설치된 mariaDB 와 php 연동 확인
1) phpinfo.php 페이지를 통해 mysqli 를 확인합니다.
2) mariadb 연동 테스트 페이지로 php 와 연동이 되었는지 확인할 수 있는 간단한 스크립트 입니다.
mariadb 에 접속하여 테스트 진행할 db와 계정을 생성한 뒤 진행합니다.
php 7 버전의 경우 보안성이 좋은 mysqli 모듈이 설치 되어 있기 때문에 해당 스크립트를 처리할 수 있습니다.
<?php
$host = ‘localhost’;
$user = ‘ ‘;
$pw = ‘ ‘;
$dbName = ‘test’;
$mysqli = new mysqli($host, $user, $pw, $dbName);
if($mysqli){
echo “MySQL sucess”;
}else{
echo “MySQL fail”;
}
?>
** $ host –> mariadb 접속할 host
$ user –> mariadb 에 생성된 user 이름
$ pw –> 생성된 user 의 패스워드
$ dbName –> 생성된 database 이름
3) Mariadb 와 php 가 연동되었다면 아래와 같이 페이지가 출력됩니다.