서버/Linux

우분투에 APM (Apache+PHP+MariaDB) 설치하기

날개 2013. 12. 21. 21:01

이번 포스팅은 우분투에 APM을 설치하는 방법을 기록해 둡니다.


단, Apache + PHP + MySQL에서 MySQL 대신 MariaDB를 설치합니다.


만약 가상서버 호스팅과 같은 서비스를 받고 있다면, 작업전에 실패로 인한 복원이 쉽도록 스냅샷과 같은 백업을 해 두는 것이 안전하겠습니다.




0. 루트 권한 획득


APM을 설치하려면 루트 권한이 필요 합니다. 각 명령 앞에 sudo 명령과 함께 사용할 수도 있지만, 여러 작업을 해야 하니 우선,

$ sudo su


으로 루트 권한으로 바꿔 놓습니다. (불안하면 sudo 명령과 함께 작업해도 되겠죠.)


만약 root로 로그인 한 상태라면 필요 없습니다.


(작업이 모두 끝나면 logout 해서 root 상태를 반드시 벗어나는것이 좋겠습니다.)




1. 우분투 apt-get 업데이트


APM을 설치하기 전에 apt-get 정보를 업데이트 합니다.


$ apt-get update




2. Apache 설치


아파치 서버를 설치해 보겠습니다. 참고로 아파치 서버의 공식 사이트는 http://www.apache.org 입니다.


Apache 서버를 설치 합니다.


$ apt-get install apache2


명령을 주면, 설치하느라 디스크 공간을 OOO 만큼 차지할건데 그래도 할거냐고 물을 수 있습니다. YES로 설치 합니다.


설치 되었으면, 웹브라우저를 열고 아파치 서버가 설치된 서버의 IP주소나, 도메인을 입력하여 정상적으로 설치 되었는지 확인합니다.



위 화면처럼 나오면 아파치가 제대로 설치 된것입니다. (참고로 제 경우는 아직 www를 알리아스로 넣지 않아서 www를 붙이면 접속이 안되네요. 그냥 도메인만 넣어야 합니다.)




3. MariaDB 설치


저는 MySQL 대신에 MariaDB를 설치 해 보도록 하겠습니다. MySQL 설치 하는 방법은 워낙 많기 때문에 굳이 설명 안해도 될 것 같습니다. MySQL 설치할 분은 검색하면 되겠습니다.


MariaDB를 설치 하는 이유는.... 유행 한번 따라 보려고....

MySQL이 오라클로 넘어간 이후로 커뮤니티 버전의 무료 MySQL이 소홀하다는 글들이 있더군요. 

MariaDB는 MySQL을 만든 초기 멤버들이 작업하고 있고, MySQL과 90%이상 비슷하다고 하니 대신 사용해도 별 문제가 없을 거라는 얘기도 있고요. 그리고 대형 벤더들이 MySQL에서 MariaDB로 옮겨가고 있는 곳들도 있다고 합니다.


여튼 MariaDB를 설치 해 볼것인데요, 아쉽게도 아직은 MySQL처럼 apt-get 명령어 한줄로 간단하게 설치는 되지 않습니다. 하루 빨리 MySQL처럼 쉽게 설치할 수 있으면 좋겠네요.


먼저 MariaDB의 공식사이트는 http://www.mariadb.com 입니다.


또한 우분투에 MariaDB를 설치하는 방법은 https://mariadb.com/kb/en/installing-mariadb-deb-files/ 에 있습니다. (링크는 바뀔 수 있음)


그럼 설치 방법에 따라 설치를 해보죠.


먼저, GnuPG 사이닝 키를 임포트 합니다.


$ apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db


아래와 같이 임포트 결과가 나오면 됩니다.



그 다음, MariaDB의 레포지토리(저장소)를 내 서버의 sources.list 에 추가해 줍니다.


먼저 레포지토리를 선택해야 하는데요, MariaDB 사이트의 RESOURCES의 Repository Configuration Tool 에서 선택 할 수 있습니다. 


이 글을 쓰는 시점에서 레포지토리 선택의 URL은,

https://downloads.mariadb.org/mariadb/repositories/#mirror=kaist&distro=Ubuntu&distro_release=precise&version=5.5 입니다.


레포지토리 선택 화면에서 설치할 운영체제와 버전을 선택하면, 레포지토리를 추가하는 방법을 알 수 있습니다.


(원본출처 : http://www.mariadb.com )


저는, Ubuntu 12.04LTS에 MariaDB 5.5버전의 KAIST 레포지토리 미러를 선택해 보겠습니다.


아래의 명령어로 레포지토리를 추가해 보겠습니다.


$ add-apt-repository 'deb http://ftp.kaist.ac.kr/mariadb/repo/5.5/ubuntu precise main'


만약에 add-apt-repository 명령이 에러가 나면, 아래 명령어로 툴을 설치해 줍니다.


$ apt-get install python-software-properties


위 명령어로 툴을 설치후에 다시 add-apt-repository... 를 실행하면 추가 될 것입니다.

(물론 직접 /etc/apt/sources.list를 수정해도 됩니다.)


제대로 sources.list 에 추가 되었는지 확인해 봅니다.


$ cat /etc/apt/sources.list




위 화면처럼 sources.list에 추가가 된 것을 확인합니다.


이제 새로 추가한 레포지토리가 적용 되도록 apt-get 을 업데이트 합니다.

$ apt-get update


MariaDB를 설치합니다.


$ apt-get install mariadb-server


설치하는데 시간이 좀 걸리네요. (생각해 보니 서버가 뉴욕에 있는데, 레포지토리를 대한민국에 있는 KAIST를 선택했군요. 이런 실수를...--; )


설치 중간에 MySQL과 같이 MariaDB에서 사용할 root 비밀번호 입력을 요구 합니다. 입력해 줍니다.



비밀번호도 만들었으면 조금만 더 기다리면 설치가 완료 됩니다.



설치가 완료 되었습니다. (InnoDB는 Disabled 되어 있다고 그러네요..)


설치가 잘 되었는지 확인해 볼까요?


MariaDB에 접속하여 데이터베이스를 확인해 보겠습니다.


$ mysql -uroot -p     (유저명이 root 이고, 비밀번호를 입력 받겠다는 뜻입니다.)


비밀 번호를 입력하면 아래와 같은 화면이 나옵니다. 



show databases 명령으로 데이터베이스 목록을 출력해 봤습니다.


잘 설치가 되었군요. 한가지 흥미로운 점이 mysql로 실행을 했는데, 밑줄을 보면 Welcome to the MariaDB... 라고 나오지요. 실제로는 MariaDB입니다만, mysql과 호환된다는 것을 알 수 있겠네요.


quit 명령어로 빠져 나옵니다.




4. PHP 설치


PHP의 공식 사이트는 http://www.php.net 입니다.


PHP도 apt-get으로 간단하게 설치 할 수 있습니다.


아래의 명령으로 설치 합니다.


$ apt-get install php5-common php5 libapache2-mod-php5


MariaDB를 PHP와 연동하기 위해 아래의 명령어를 입력해 줍니다.


$ apt-get install php5-mysql


Apache 서버를 재시작 합니다.


$ service apache2 restart


MariaDB를 재시작 합니다.


$ service mysql restart


이제 PHP까지 제대로 (MariaDB 연동까지) 설치 되었는지 확인을 해 보아야 겠죠?


/var/www 디렉터리에 아래 내용의 test.php 파일을 하나 만듭니다.


<?php

    phpinfo();

?>


그리고 웹사이트에서 서버의 IP 주소 또는 URL의 test.php 를 열어 봅니다.


예를 들어, URL이 minthandsgames.com 이라면 'http://minthandsgames.com/test.php' 로 PHP정보를 확인해 봅니다.


제 경우는 아래와 같이 나오더군요.




아래로 스크롤을 좀 많이 해 본 것인데요, mysql과 mysqli 까지 제대로 설정된 것을 볼 수 있습니다.

(다시 한번 말씀 드리지만 MariaDB가 mysql로 인식 됩니다.)





이렇게 우분투 리눅스에 아파치 + PHP + MariaDB를 설치해 보았습니다.




끝.