RSS구독하기:SUBSCRIBE TO RSS FEED
즐겨찾기추가:ADD FAVORITE
글쓰기:POST
관리자:ADMINISTRATOR
**2010년 4월 22 일 수정 - 내용추가, 부분수정

이전에
http://www.commit.co.kr/57   에서 세팅했던
apache + tomcat+jdk+오라클+톰켓 커넥터이용 연동되었던 환경에서
계속 APM을 연동하겠습니다
apache는 전에 연동하면서 설치했던것으로 사용합니다

Yum 으로 APM+ Zend optimizer

 


설치 환경 및 버전

OS

Centos 5.2

Apache2.2

httpd-2.2.3-22.el5.centos.2

PHP

php-5.1.6-23.2.el5_3

MYSQL

mysql-5.0.77-3.el5

RAM

755MB



설치순서는 apache mysql php 순으로 설치 하겠습니다 작업은 root로 합니다

 

 

1.apache 설치

# yum -y install httpd

 

 

2. mysql 설치

# yum -y install mysql mysql-server mysql-devel

***설치후 mysql 계정과 mysql 그룹은 자동 추가가 됩니다

 

3. 필요 라이브러리 설치

# yum -y install zlib zlib-devel freetype freetype-devel freetype-utils gd gd-devel libjpeg libjpeg-devel libpng libpng-devel php-gd libmcrypt libmcrypt-devel

 

 

4. php php-mysql연동 설치

# yum -y install php php-mysql

 

5. mysql에서 사용할 환경 설정파일을 복사 합니다 시스템에 따라 다르니 아래를 참조합니다

my-huge.cnf     1GB 이상 메모리

my-large.cnf     512MB ~ 1GB

my-medium.cnf  128MB ~ 256MB

my-small.cnf     64MB 이하

필자의 시스템은 메모리가 755MB임으로 my-large.cnf 를 이용합니다  

 

파일을 복사합니다 기존에 파일이있기에 덮어쓸꺼냐고
물어보는데 y를치고 엔터를 칩니다

# cp /usr/share/mysql/my-large.cnf /etc/my.cnf

cp: overwrite `/etc/my.cnf'? y

 

my.cnf 에 UTF-8 로 character set을 지정합니다

아래 내용을 섹션에 따라서 기술해 주세요

 

 

[client]
default-character-set = utf8

 

[mysqld]

init_connect=SET collation_connection = utf8_general_ci
init_connect=SET NAMES utf8
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci

 

 

[mysqldump]
default-character-set = utf8

 

 

[mysql]
default-character-set = utf8



6.

기본관리 db를 설정하고 권한 지정

# /usr/bin/mysql_install_db --user=mysql

# chown -R root /usr/bin/

# chown -R mysql /var/lib/mysql/

# chgrp -R mysql /usr/bin/

 



7. 재부팅후 자동 실행가능하도록 등록 해줍니다


# /sbin/chkconfig --list | grep mysqld

mysqld           0:해제    1:해제    2:해제    3:해제    4:해제    5:해제    6:해제

 

만약 글짜가 깨진다면 LANG=C  라고 치신다음 다시 해보시기 바랍니다

필자는 런레벨3(콘솔부팅)로 이용하기에

# /sbin/chkconfig --level 3 mysqld on

이렇게 하지만 보통의 환경이라면

 

# /sbin/chkconfig --level 2345 mysqld on     으로 해줍니다

# /sbin/chkconfig --list | grep mysqld        로 확인 합니다

 


8. mysql 시작, root 비밀번호 설정

Mysql을 시작과 종료방법에는 3가지 방법이 있습니다 편한대로 사용하면 됩니다

 

[데몬 직접실행 및 중지]

/etc/init.d/mysqld [start | stop]

 

[service로 실행 및 중지]

/sbin/service mysqld [start | stop]

 

[mysql 직접 실행 및 중지]

/usr/bin/mysqld_safe &

/usr/bin/mysqladmin shutdown

 

개인적으로는 service mysqld start/stop 쓰는 편입니다

**
동작확인

 

 ps -ef | grep mysql   로 확인 합니다




이제 root패스워드를 지정 합니다

# mysql mysql
mysql > update user set password=password('변경할패스워드') WHERE user='root';
mysql > flush privileges;
mysql > quit


# mysql -u root -p   <엔터>

밑에 줄에 비번치고 들어가서

Show databases; 를 쳐서 db상태를 확인합니다

 




케릭터 셋도 확인해봅니다      show variables like "c%";    <-- 쿼리를 날리면


확인후에 exit
 


9. apache 세팅

연동부분만 다루기에 기본세팅만 합니다 자세한 세팅은 따로 찾아보셔야 합니다

# vi /etc/httpd/conf/httpd.conf

로 열어서

 

DirectoryIndex index.jsp index.html index.php index.html.var

부분에 위와같이 index.php를 추가합니다

그리고 밑의 내용을 추가 합니다


AddType application/x-httpd-php .php .php3 .html .htm .phtml .inc

AddType application/x-httpd-php-source .phps


#ServerName www.example.com:80 에서 # 을 제거 해줍니다

저장하고 나온후

 

# service httpd restart   등으로 아파치를 재시작 합니다

 

**외부에서 접속 테스트시 방화벽 80포트 열어줘야 합니다**


/var/www/html phpinfo.php 파일을 만든후 안의 내용은 밑에와
같이 기술합니다

 

<?

phpinfo();

?>

 

저장한후에 http://주소/phpinfo.php http://localhost/phpinfo.php

를 쳐서 정상출력되면 apache php는 정상 연동 된것이다

 


10. zend optimizer 설치

http://www.zend.com/en/products/guard/downloads

로가서 os와 아키텍처에 맞는 버전을 다운받습니다 (혹은 다른곳에서 알아서)

 

필자가 사용한버전은

ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz    입니다

 

적당한 위치에서 압축을 풉니다

#  tar zxvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz

 

3.3.9 버전부터는 이전버전의 install.sh 이 제공 되지 않습니다 일단 설치된 php버전을 확인합니다

#  php -v

PHP 5.1.6 (cli) (built: Apr  7 2009 08:00:04)

Copyright (c) 1997-2006 The PHP Group

Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

 

위 내용으로 5.1.6 으로 알수있습니다

php버전에 따른 zend모듈을 복사 합니다

#  cd ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_1_x_comp

#  cp ZendOptimizer.so /usr/lib/httpd/modules/

 

/etc/php.ini 에 아래 내용을 추가합니다

[Zend]

zend_optimizer.version=3.3.9

zend_extension=/usr/lib/httpd/modules/ZendOptimizer.so

 

그리고 php -v 를 하면 전과 다르게 Zend Optimizer v3.3.3가 보입니다 
조금은 이상한것이 3.3.9로 나와야 하는데 안나오니;; 좀이상하긴합니다




추가후 혹시 php -v 하였을시 아래와 같이 나온다면
Failed loading /usr/lib/httpd/modules/ZendOptimizer.so:  /usr/lib/httpd/modules/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied


레드햇 계열인 rhel 이나 fedora나 centos인 경우에는
일단 setenforce 0  으로 selinux 기능을 끄시고
vi  /etc/sysconfig/selinux  열어서
SELINUX=enforcing 되어있는거을 disabled 로 변경하시면
다음부팅에도 selinux가 비활성화 됩니다 



아파치 서버를 재시작합니다

# service httpd restart

 

위에서 실행했던 phpinfo.php를 다시 실행합니다 http://주소/phpinfo.php 혹은 http://localhost/phpinfo.php

밑의 두내용이 있다면 zend optimizer가 정상작동하고 있는 것 입니다

 

 

 



APM연동과 Zend optimizer 설치를 마칩니다

 

 이로써 필자의 개발서버는  html, jsp, php 3가지 처리될수 있는 환경이 되었습니다

일반적으로 APM연동후 zend optimizer설치후 jdk를 설치하면서 tomcat과 연동하는것이 일반적이나

필자는 원래는 apache 와 톰켓만 연동하려고 햇던 개발서버여서 APM을 뒤쪽에 작업했으나 보통 문서들은
APM후에 TOMCAT연동으로 순서가 된다는점을 알려드립니다



포스트 다운로드




페도라 한국 사용자 모임

페도라 한국 사용자 모임 태랑의 포스팅글입니다
  파이어폭스에 최적화 되어있습니다
2009/09/22 18:50 2009/09/22 18:50

이 포스트가 유용하셨다면 구독하세요

http://www.commit.co.kr/trackback/60
from.디지문닷넷  2011/06/22 19:59
간만에 APM 컴파일 삽질을 하게 되었다.PHP 5.2.11까지 연동 설치하고 ZendOptimizer 3.3.9를 연동 시도해 보았는데 요 놈은 install.sh 파일이 없고 각 PHP 버전에 맞는 ZendOptimizer.so 파일만 제공하고 있다.(여담이지만 2010년 12월 릴리즈되기 시작한 PHP 5.3.x부터는 ZendOptmizer가 더 이상 지원치 않고 ZendGuardLoader라는 걸 연동하도록 되어 있다)php.ini 파일에...
태랑:Extreme Performance DBA 를 꿈꾼다
admin@commit.co.kr / 
purityboy83@gmail.com
Extreme Performance DBA 를 꿈꾼다 admin@commit.co.kr / purityboy83@gmail.com
전체보기 (112)
Solaris (14)
Linux (45)
DATABASE (32)
Enterprise Manager (4)
Virtualization (0)
JAVA / C / 그외 개발언어 (3)
넓은 세상의 이야기들 (14)

Tag List