1. 程式人生 > >Linux學習總結(三十九)lnmp環境搭建1-mysql,php 安裝

Linux學習總結(三十九)lnmp環境搭建1-mysql,php 安裝

lnmp mysql php php-fpm

之前我們介紹過lamp,lnmp和lamp相比就是把apache換為了nginx,nginx也是目前比較流行的一款web server,在處理高並發請求上,性能要遠勝於apache。apache將php作為一個自己的一個擴展模塊來使用,nginx則結合一個獨立的php服務。
技術分享圖片
1.安裝mysql

cd /usr/local/src
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 
tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
cd /usr/local/mysql
useradd mysql
mkdir /data/
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
cp support-files/my-default.cnf  /etc/my.cnf 
cp support-files/mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
定義basedir和datadir
/etc/init.d/mysqld start

安裝步驟跟lamp環境中一樣
2 安裝php
(1).下載php源碼包

cd /usr/local/src/
wget http://cn2.php.net/distributions/php-5.6.30.tar.gz

(2) 解壓源碼包,創建用戶

tar zxf php-5.6.30.tar.gz
useradd -s /sbin/nologin php-fpm

該用戶用來運行php-fpm 服務。在lnmp環境中,php是一個服務php-fpm的形式出現,獨立存在於系統當中。
(3) 配置編譯選項。
cd php-5.6.30
./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl --with-openssl


和lamp中相比多了一個--enable-fpm的選項
(4)編譯和安裝。執行make && make install
以上過程一般都會有錯誤要處理
技術分享圖片
解決辦法: yum install -y libcurl-devel
這次沒有碰到其他問題,是因為之前我們在lamp環境中安裝php時,已經安裝了大量的依賴庫文件,還有一點就是我們要用之前編譯過我源碼包的話,要先進行
make clean 操作,刪除原先編譯好的文件。
(5)配置編輯配置文件,拷貝啟動腳本
vim /usr/local/php-fpm/etc/php-fpm.conf
寫入以下下內容

[global]
pid = /usr/local/php-fpm/var/run/php-fpm.pid
error_log = /usr/local/php-fpm/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024

保存配置文件後
執行下/usr/lcoal/php-fpm/sbin/php-fpm -t檢測配置時否正確
出現 test successful 說明配置無誤
在剛才的php源碼包中復制啟動腳本
cp /usr/local/src/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
(6)更改權限,啟動服務
chmod 755 /etc/init.d/php-fpm
/etc/init.d php-fpm start或者service php-fpm start

Linux學習總結(三十九)lnmp環境搭建1-mysql,php 安裝