1. httpd.conf 수정

DOCUMENT_ROOT 수정

/usr/local/apache/conf 폴더안에 php.ini 있어야지 정상동작


2. mysql 추가 설정

원격접속허용

https://zetawiki.com/wiki/MySQL_%EC%9B%90%EA%B2%A9_%EC%A0%91%EC%86%8D_%ED%97%88%EC%9A%A9


3306 포트 열어주기


<외부 아이피 접속 허용>

 GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '자신의비밀번호';


mysql -u root -p db명 < db명.sql


<blink로 화면 변하는것 수정>

[root@localhost ~]# vi /etc/grub.conf

...... consoleblank=0 옵션 추가...........

title CentOS 6 (2.6.32-504.el6.x86_64)

        root (hd0,0)

        kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 

rd_NO_MD rd_LVM_LV=VolGroup/lv_swap consoleblank=0 SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGrou

p/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

        initrd /initramfs-2.6.32-504.el6.x86_64.img


Posted by 모과이IT
,

1. 빌드 환경 설정


yum install -y libjpeg libjpeg-devel libjpeg-turbo-devel gd gd-devel gdbm-devel php-mbstring libexif-devel libmcrypt libmcrypt-devel libvpx libvpx-devel libXpm libXpm-devel icu libicu libicu-devel t1lib t1lib-devel gmp-devel mhash* gettext gettext-devel libtidy libtidy-devel libxslt libxslt-devel libedit-devel libc-client libc-client-devel pam-devel readline-devel libpng libpng-devel krb5-devel db4-devel expat*


1-1. libmcrypt & libmcrypt-devel 패키지 설치

CentOS에서는 위 패키지가 yum에 포함되어있지 않아 직접 설치해야 한다. Ubuntu는 확인하지 못했는데 apt-get으로 된다면 그렇게 설치하면 된다.


cd /usr/local/src

wget http://elders.princeton.edu/data/puias/unsupported/6/x86_64/libmcrypt-2.5.8-9.puias6.x86_64.rpm

wget http://elders.princeton.edu/data/puias/unsupported/6/x86_64/libmcrypt-devel-2.5.8-9.puias6.x86_64.rpm

rpm -ivh libmcrypt-2.5.8-9.puias6.x86_64.rpm

rpm -ivh libmcrypt-devel-2.5.8-9.puias6.x86_64.rpm

2. MySQL 라이브러리 참조


cd /usr/local/mysql

ln -s lib lib64



3. PHP 다운로드 및 컴파일


cd /usr/local/src

wget http://am1.php.net/get/php-5.6.25.tar.gz/from/this/mirror

tar xvfz mirror

cd php-5.6.25

./configure --prefix=/usr/local/php \

--with-apxs2=/usr/local/apache/bin/apxs \

--with-config-file-path=/usr/local/apache/conf \

--with-mysql=/usr/local/mysql \

--with-mysql-sock=/usr/local/mysql \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--with-pdo-mysql=/usr/local/mysql \

--with-regex=php \

--with-libxml-dir=/usr \

--with-openssl --with-pcre-regex --with-zlib \

--with-bz2 --with-curl --with-gdbm \

--with-db4=/usr --with-dbm --with-pcre-dir=/usr --with-openssl-dir=/usr \

--with-libxml-dir=/usr --with-gd --with-vpx-dir=/usr --with-jpeg-dir=/usr \

--with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr \

--with-t1lib=/usr --with-gettext --with-gmp --with-mhash --with-imap \

--with-imap-ssl --with-kerberos --with-icu-dir=/usr --with-ldap \

--with-ldap-sasl --with-libmbfl --with-onig --with-mcrypt \

--with-libedit --with-readline --with-tidy --with-libexpat-dir=/usr \

--with-xmlrpc --with-xsl --with-pear --with-pic --with-libdir=lib64 \

--enable-bcmath --enable-calendar --enable-exif \

--enable-ftp --enable-pcntl --enable-gd-native-ttf \

--enable-gd-jis-conv --enable-intl --enable-mbstring \

--enable-shmop --enable-sockets --enable-sysvmsg \

--enable-sysvsem --enable-sysvshm --enable-wddx \

--enable-zip --enable-mysqlnd --enable-dba=shared \

--enable-mod-charset --enable-dom --enable-mbregex \

--enable-inline-optimization --enable-sigchild --enable-soap \

--enable-maintainer-zts --enable-opcache=nom


make


(** make시 오류해결)

https://zetawiki.com/wiki/CentOS_php-pear_%EC%84%A4%EC%B9%98

"php설치시 “PEAR package PHP_Archive not installed” 오류 관련 참고"

make후 pear 패키지 install failed 뜨면 위와 같이 따로 설치해주면 된다


make install



4. PHP 환경설정


cp php.ini-production /etc/httpd/php.ini

 vi /etc/httpd/php.ini


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;Module Settings;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Date]

date.timezone = "Asia/Seoul"


5. Apache 환경설정


vi /usr/local/apache/conf/httpd.conf


# httpd.conf 내에서 PHP모듈이 정상적으로 추가되어있는지 확인 (자동으로 연동되어 등록됨)

LoadModule php5_module          modules/libphp5.so


#<IfModule dir_module>을 찾아 아래 내용 추가

<IfModule dir_module>

     DirectoryIndex index.html index.htm index.php index.cgi

</IfModule>


#<IfModule mime_module> 을 찾아 아래 내용 추가

<IfModule mime_module>

     AddType application/x-compress . z

     AddType application/x-gzip . gz . tgz

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

     AddType application/x-httpd-source .phps

</IfModule>


#httpd.conf 저장한 뒤

/etc/init.d/httpd restart


6. 환경변수 등록


cd ~

vi .bash_profile


#PATH부분에 아래 내용을 추가한다

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/php/bin


#.bash_profile 저장한 뒤


source .bash_profile



7. 연동 확인


vi /usr/local/apache/htdocs/phpinfo.php


<? php

phpinfo();

?>


# 입력 후 저장


8. /etc/httpd/php.ini 수정

https://jguru-study.tistory.com/31

short_open_tag = on

 수정 저장후

service httpd restart


[참고사이트]

https://jguru-study.tistory.com/29

https://jguru-study.tistory.com/30

https://jguru-study.tistory.com/31


Posted by 모과이IT
,

[MySQL Source 설치]


1. 기존에 설치된 MySQL과 cmake 삭제

yum remove -y mysql* cmake


2. 빌드 환경 설정


yum install -y zlib zlib-devel cpp perl bison freetype freetype-devel freetype-utils ncurses-devel libtermcap-devel bzip2-devel


3. cmake 다운로드 및 설치


MySQL 5.5부터는 ./configure가 아닌 cmake를 통해 컴파일을 진행해야 한다.


cd /usr/local/src

wget https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz

tar xvfz cmake-3.5.2.tar.gz

cd cmake-3.5.2

./bootstrap

make && make install

4. MySQL 그룹 및 계정 만들기


groupadd mysql

useradd -g mysql mysql

5. MySQL 다운로드


cd /usr/local/src

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.30.tar.gz

tar xvfz mysql-5.6.30.tar.gz

cd mysql-5.6.30

6. MySQL cmake 컴파일


/usr/local/bin/cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS=all \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_DATADIR=/usr/local/mysql/data \

-DMYSQL_USER=mysql \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DMYSQL_TCP_PORT=3306


make

make install

위 컴파일 내용을 간단히 설명하자면 다음과 같다.


-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ //mysql 설치할 디렉토리

-DMYSQL_DATADIR=/usr/local/mysql/data \ //db설치(data폴더)할 디렉토리

-DDEFAULT_CHARSET=utf8 \ //mysql 서버의 문자셋

-DDEFAULT_COLLATION=utf8_general_ci \ //db의 문자셋

-DWITH_EXTRA_CHARSETS=all \ //추가로 지원할 문자셋

-DENABLED_LOCAL_INFILE=1 \ //local_infile변수 사용가능여부, 텍스트 파일의 데이터를 특정 테이블에 저장하는 변수

-DMYSQL_USER=mysql \ //mysql유저를 지정

-DWITH_INNOBASE_STORAGE_ENGINE=1 \ //스토리지 엔진, default innodb

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ //스토리지 엔진

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ //스토리지 엔진

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ //스토리지 엔진

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ //mysql 소켓 디렉토리

-DMYSQL_TCP_PORT=3306 //mysql 포트번호, default가 3306임


7. mysql그룹/계정 권한주기


chown -R (계정명):(그룹명) /usr/local/mysql

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

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

8. DB 생성


cd /usr/local/mysql

./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data

9. MySQL 설정파일 및 데몬 복사 / base, datadir지정


cp support-files/my-default.cnf /etc/my.cnf

#(메모리 용량에 따라 my- 뒤에 이름이 다를 수 있음)

#(이미 존재하는 파일이라면 덮어씌우면 됨)


cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld


vi /etc/init.d/mysqld 

#입력 후 아래 내용 추가

#basedir=/usr/local/mysql

#datadir=/usr/local/mysql/data



10. 환경변수 등록 및 MySQL 데몬 실행


cd ~

vi .bash_profile


#PATH부분에 아래 내용을 추가한다

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin


source .bash_profile

service mysqld start



service mysqld start로 msyql의 데몬을 실행하면 mysql만 입력해도 root계정을 통해 mysql에 접근이 가능하다.




11. MySQL root 계정 비밀번호 변경


# mysqladmin -u root password 암호

mysqladmin -u root password root123


암호 설정 후 root 유저로 접속 테스트

mysql -u root -p

Enter password : 



root 계정 비밀번호를 설정하면, mysql 입력만 하면 오류가 발생한다.

따라서, mysql -u root -p로 비밀번호까지 입력해야 접근할 수 있다.





12. 리눅스 시작시 mysql 구동되도록 설정


chkconfig --add mysqld

chkconfig mysqld on

chkconfig --list mysqld


[참고사이트]

https://jguru-study.tistory.com/29

https://jguru-study.tistory.com/30

https://jguru-study.tistory.com/31


Posted by 모과이IT
,