우선 필요한 Application 을 다운로드한다.
- MySQL
– 최신버전 : 5.6.14
– 다운로드 페이지 : http://dev.mysql.com/downloads/mysql/#downloads – Select Platform 의 콤보박스에서 Source Code 를 선택하여 가장 마지막 항목을 다운로드 한다. (Generic Linux (Architecture Independent), Compressed TAR Archive)
– 다운로드 URL : http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz/from/http://cdn.mysql.com/ - Apache Portable Runtime
– 최신버전 : APR 1.4.8. APR-util 1.5.2, APR-iconv 1.2.1
– 다운로드 페이지 : http://apr.apache.org/download.cgi
– APR 다운로드 URL : http://mirror.apache-kr.org//apr/apr-1.4.8.tar.gz
– APR-util 다운로드 URL : http://mirror.apache-kr.org//apr/apr-util-1.5.2.tar.gz - Apache HTTP Server
– 최신버전 : 2.4.6
– 다운로드 페이지 : http://apache.org/dyn/closer.cgi – mirror 에서 다운받는 경우 http 폴더로 들어가서 다운로드한다.
– 다운로드 URL : http://mirror.apache-kr.org/httpd/httpd-2.4.6.tar.gz - PHP
– 최신버전 : 5.5.4
– 다운로드 페이지 : http://php.net/downloads.php
- 다운로드 URL : http://kr1.php.net/get/php-5.5.4.tar.gz/from/this/mirror
의존 라이브러리 설치
123456789yum groupinstall
"Development Tools"
yum
install
wget
yum
install
cmake
yum
install
ncurses-devel
yum
install
libtool-ltdl
yum
install
expat-devel
yum
install
db4-devel
yum
install
pcre-devel
yum
install
openssl-devel
MySQL 설치
- 관리 계정 생성
아래는 “dba” 그룹 계정과 “mysql” 계정으로 생성하였다.
1 2 | [root@host ~] groupadd dba [root@host ~] useradd -M -c "MySQL" -d /var/mysql -g dba -s /bin/nologin mysql |
- 소스를 다운로드 받고 압축 해제
1 2 3 4 | [root@host ~] mkdir downloads [root@host ~] cd /root/downloads [root@host downloads] wget http: //dev .mysql.com /get/Downloads/MySQL-5 .6 /mysql-5 .6.14. tar .gz /from/http : //cdn .mysql.com/ [root@host downloads] tar zxvf mysql-5.6.14. tar .gz |
- 컴파일과 설치
5.5 미만 버전에서는 configure 로 makefile 파일을 만들었는데 5.5 이상 버전부터 cmake 를 이용하여 makefile 을 생성하고 컴파일하도록 변경되었다.
cmake 는 멀티플랫폼을 지원하는 make 대용 개발 도구로 플랫폼 별로 make 파일을 만들어주는 meta make 이다.
자세한 설명은 [wiki:CMake] 에서 확인한다.
cmake 를 이용해 설치 옵션과 함께 makefile 을 생성하고 컴파일 및 설치를 진행한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | [root@host downloads] cd mysql-5.6.11 [root@host mysql-5.6.11] cmake \ -DCMAKE_INSTALL_PREFIX= /usr/local/mysql \ -DMYSQL_DATADIR= /var/mysql/data \ -DMYSQL_UNIX_ADDR= /var/mysql/mysql .sock \ -DSYSCONFDIR= /etc \ -DMYSQL_TCP_PORT=3306 \ -DMYSQL_USER=mysql \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 [root@host mysql-5.6.11] gmake; gmake install |
이외의 MySQL 설치 옵션은 아래 URL을 참고한다.
http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html
- 데이터베이스가 저장되는 폴더 생성
“/var/mysql/data” 에 데이터베이스 파일들을 저장하기 위해서 “data” 폴더의 부모 폴더인 “/var/mysql” 폴더를 생성한다.
기본 데이터베이스 저장 폴더인 “/usr/local/mysql/data” 에 저장하는 경우는 부모 폴더가 존재하기 때문에 폴더를 생성하지 않아도 된다.
1 | [root@host downloads] mkdir /var/mysql |
- 기본 데이터베이스 생성 및 폴더 권한 변경
1 2 3 4 | [root@host mysql-5.6.11] cd /usr/local/mysql [root@host mysql] . /scripts/mysql_install_db --user=mysql --datadir= /var/mysql/data [root@host mysql] chown -R mysql:dba /usr/local/mysql [root@host mysql] chown -R mysql:dba /var/mysql |
- 환경 설정
위에서 mysql_install_db 를 실행하면 “/usr/local/mysql/” 폴더에 my.cnf 파일이 생성된다.
이 파일을 설치시에 지정한 “/etc/” 폴더로 이동시켜서 환경 설정 파일을 수정한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | [root@host mysql] mv . /my .cnf /etc/my .cnf [root@host mysql] vi /etc/my .cnf ----------------------------------------------------------------- [mysqld] sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES innodb_buffer_pool_size = 16M innodb_additional_mem_pool_size = 2M innodb_log_file_size = 5M innodb_log_buffer_size = 8M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 |
더 자세한 옵션은 아래 URL을 참고한다.
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
- PATH 추가 및 서비스 등록
MySQL 의 주요 실행 파일을 어떤 경로에서든지 실행할 수 있도록 PATH 환경 변수에 추가된 “/bin”, “/sbin” 폴더로 Symbolic Link 를 걸어둔다.
1 2 3 4 | [root@host mysql] ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql [root@host mysql] ln -s /usr/local/mysql/bin/mysqldump /usr/sbin/mysqldump [root@host mysql] ln -s /usr/local/mysql/bin/mysql_config /usr/sbin/mysql_config [root@host mysql] ln -s /usr/local/mysql/bin/mysqladmin /usr/sbin/mysqladmin |
MySQL 을 서비스에 등록하여 chkconfig 유틸리티로 관리할 수 있도록 한다.
MySQL 에서 제공하는 daemon 실행 스크립트의 링크를 생성하고 서비스에 등록하여 데몬을 시작한다.
아래는 3, 5 runlevel 에서만 동작하도록 2, 3 runlevel 에서는 동작하지 않도록 했다.
1 2 3 4 | [root@host mysql] ln -s /usr/local/mysql/support-files/mysql .server /etc/rc .d /init .d /mysql [root@host mysql] chkconfig --add mysql [root@host mysql] chkconfig --level 24 mysql off [root@host mysql] service mysql start |
- 관리자 비밀번호 설정
MySQL 의 관리자 계정인 “root” 의 암호를 설정한다.
암호를 설정한 뒤에는 MySQL 의 root 계정으로 접속 시에 설정한 암호를 요구하게 된다.
1 2 | root@host mysql] mysqladmin -u root password "1234" root@host mysql] mysqladmin -u root -p reload |
- 공유 라이브러리 추가
MySQL 라이브러리를 다른 어플리케이션에서 쉽게 접근할 수 있도록 공유 라이브러리에 추가한다.
1 2 | [root@host mysql] echo "/usr/local/mysql/lib" >> /etc/ld .so.conf [root@host mysql] ldconfig |
Apache 설치
Apache 를 설치하기 위해서는 APR 이 설치되어 있어야 한다. 이전에 APR 은 Apache 프로젝트에 포함되었으나 별도 프로젝트로 분리되었다. Apache 에 포함된 bundle 를 사용해도 되지만 APR 을 별도로 설치하겠다.
- APR 설치
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # APR 다운로드 및 압축 해제 [root@host downloads] wget http: //mirror .apache-kr.org //apr/apr-1 .4.8. tar .gz [root@host downloads] wget http: //mirror .apache-kr.org //apr/apr-util-1 .5.2. tar .gz [root@host downloads] tar zxvf apr-1.4.8. tar .gz [root@host downloads] tar zxvf apr-util-1.5.2. tar .gz # APR 설치 [root@host downloads] cd apr-1.4.8 [root@host apr-1.4.8] . /configure --prefix= /usr/local/apr [root@host apr-1.4.8] make ; make install # APR-util 설치 [root@host apr-iconv-1.2.1] cd .. /apr-util-1 .5.2 [root@host apr-util-1.5.2] . /configure --prefix= /usr/local/apr \ --with-apr= /usr/local/apr/bin/apr-1-config \ --with-crypto= /usr --with-openssl \ --with-dbm=db47 --with-gdbm --with-berkeley-db \ --with-mysql= /usr/local/mysql \ --with-sqlite3 \ --with-expat= /usr [root@host apr-util-1.5.2] make ; make install |
- 소스를 다운로드 받고 압축 해제
1 2 3 | [root@host ~] cd /root/downloads [root@host downloads] wget http: //mirror .apache-kr.org /httpd/httpd-2 .4.6. tar .gz [root@host downloads] tar zxvf http-2.4.6. tar .gz |
- 컴파일과 설치
1 2 3 4 5 6 7 8 9 10 11 12 13 | [root@host downloads] cd http-2.4.6 [root@host httpd-2.4.6] . /configure --prefix= /usr/local/httpd --sysconfdir= /etc/httpd \ --with-apr= /usr/local/apr/bin/apr-1-config --with-apr-util= /usr/local/apr/bin/apu-1-config \ --with-pcre --with-libxml2 --with-ssl --with-z \ --with-mpm=worker \ -- enable -modules=most -- enable -mods-shared=most \ -- enable - file -cache -- enable -cache -- enable - file -cache \ -- enable -so \ -- enable -mime-magic -- enable -expires -- enable -header \ -- enable -proxy -- enable -ssl \ -- enable -mpms-shared=all \ -- enable -vhosts- alias -- enable -rewrite [root@host httpd-2.4.6] make ; make install |
더 자세한 옵션은 아래 URL을 참고한다.