基於CentOS 6.8平臺最新源代碼包編譯安裝LAMP環境搭建(Apache+MySQL+PHP)

wKioL1fRMxTBdkjfAACU6S5pgM8360.png


部署環境

系統:CentOS 6.8 x86_64

Apache:2.4.23

MySQL:5.7.14

PHP:7.0.10

apr:1.5.2

apr-util:1.5.4

boost:1.59.0

cmake:3.6.1

pcre:8.39

軟件包準備

這裏CentOS6.8系統(無需圖形環境)的安裝過程略,使用個人電腦(Windows系統)的瀏覽器訪問Apache官方網站 http://www.apache.org/ 點擊下載頁面標籤

wKioL1fGgj7h5wotAAAW5ybFp0Q108.png

點擊建議的鏡像下載站點

wKiom1fGgp7hGz09AAB0bdNsWDU703.png-wh_50

找到apr目錄

wKiom1fGgvLhQ7T5AAAlOerb3Vc778.png-wh_50

這裏下載最新版tar.gz格式的apr軟件包,右擊選擇“複製鏈接地址”

wKiom1fGhEDydOIgAAA2oSgb6LA683.png-wh_50

登錄到CentOS6.8系統,切換到/usr/src目錄下,使用curl工具下載剛剛複製的鏈接文件

curl -O http://mirrors.cnnic.cn/apache/apr/apr-1.5.2.tar.gz

wKiom1fGhM6AoyWJAAArzfs-Swo527.png

按照此方法將apr-util軟件包也下載到/usr/src目錄下

wKiom1fGhR7y_PU3AABHlbTBxzg959.png-wh_50

返回到上一級目錄下

wKioL1fGhZfxOhoBAAAs3nK6ZGA463.png-wh_50

找到httpd目錄

wKiom1fGhgPxdCyOAAAXja92ftg751.png-wh_50

下載最新版Apache軟件到/usr/src目錄下

wKiom1fGhj6x4uehAABRoJNDPtk565.png-wh_50

訪問pcre官網 http://www.pcre.org/ 進入下載鏈接

wKiom1fGhu7Bda5lAABavBXbrZ0884.png-wh_50

下載最新版pcre軟件包到/usr/src目錄下

wKioL1fGh5XyUW2fAAA_yCKhgv4653.png-wh_50

訪問boost官網 http://www.boost.org/ 進入1.59.0版本信息

wKiom1fGiG_T1ZdMAAAtBJLsRjE800.png-wh_50

點擊.tar.gz格式文件包

wKioL1fGiRWwlMaNAAAaG3Wbu38533.png-wh_50

跳轉到下載頁面,自動激活瀏覽器下載器,複製下載地址到CentOS系統下載即可。

wKioL1fGiZ_RCMNXAABg8Db-wtw749.png-wh_50

訪問cmake官網 https://cmake.org/ 下載頁面標籤

wKioL1fGijKyV1AkAAN6cioBimA864.png-wh_50

下載最新發行版本

wKiom1fGipzSQqJqAADmwQ5qTCs484.png

訪問MySQL官網 https://www.mysql.com/

wKiom1fGi96xq4rMAABUia3gLHY900.png

由於MySQL已經被Oracle公司收購,MySQL企業版的下載需要Oracle的授權,所以這裏下載免費社區版。

wKiom1fGjGWBKFQXAABmWovhpl8492.png-wh_50

前往下載頁面

wKioL1fGjIyzHO7dAABHOy6LqWc985.png-wh_50

可用版本選擇源代碼包

wKiom1fGjPPyasvPAAAsFzkV6jw002.png-wh_50

通用Linux平臺的tar源代碼包

wKiom1fGjWXQguNkAAB9VF1GXQg914.png

不登錄賬戶,僅下載。

wKioL1fGjZeyyWQjAADSgXQngls828.png-wh_50

複製下載器地址進行下載

wKiom1fGjdvDgIPMAAAnZinQXD0285.png-wh_50

訪問PHP官網 http://www.php.net/ 下載最新發行版本

wKiom1fGjlDCYGYpAADK5TYhE1E311.png-wh_50

選擇距離我們最近的鏡像站點,任選一個節點下載。

wKioL1fGjpHzbclVAAAY1IvxbIg170.png-wh_50

複製下載器裏鏈接地址進行下載

wKiom1fGjt6R6bTHAAAlcv3fwTU405.png-wh_50

所需軟件包下載完成

wKioL1fGjzHRqAu4AAAhBe26jTA269.png

部署過程

使用yum安裝所必須的系統軟件包

yum install -y gcc gcc-c++ ncurses ncurses-devel perl libxml2 libxml2-devel curl-devel libpng-devel

wKioL1fGj_GRTdEiAABV37cE0TY501.png

安裝apr軟件,解壓、配置、有一個無法刪除的錯誤,可以忽略。

tar zxf apr-1.5.2.tar.gz

cd apr-1.5.2

./configure --prefix=/usr/local/apr

wKioL1fGlLijtuCMAABJc9Mlf4w954.png

編譯安裝

make && make install

wKiom1fGlbOTBLIEAABio2oz_JE726.pngwKioL1fGmOSRvVIxAACDmFrv49c252.png

切換到/usr/src目錄繼續安裝apr-util軟件

tar zxf apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/

wKioL1fGmYmxtBP5AAAwSVQUqf4186.png

編譯安裝

make && make install

wKioL1fGmb6h_E-iAABbfw2g_Mo390.png

切換回/usr/src目錄,繼續安裝pcre軟件

tar zxf pcre-8.39.tar.gz

cd pcre-8.39

./configure --prefix=/usr/local/pcre

wKioL1fGmkORuP4RAABJk7WgvEc849.png-wh_50

編譯安裝

make && make install

wKiom1fGmoLh9MEvAACnrKoPiNM826.png-wh_50

切換回/usr/src目錄,安裝Apache

tar zxf httpd-2.4.23.tar.gz

cd httpd-2.4.23

./configure --prefix=/usr/local/apache --enable-so --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/

wKiom1fGm3KwxRRpAAApt8VeXZY935.png

編譯安裝

make && make install

wKioL1fGnAPBsQKWAABClUTFIAY070.png

切換回/usr/src目錄安裝boost軟件

tar zxf boost_1_59_0.tar.gz

cd boost_1_59_0

./bootstrap.sh

wKioL1fGnH2Cj56NAABfKN9Y4g4444.png

編譯安裝,過程比較漫長,耐心等待。

./b2

wKioL1fGoKaSfbErAACV1ivxNqU138.png

安裝

./b2 install --prefix=/usr/local/boost

wKioL1fGoTDB9fjWAACXub-WS1M062.png

切換回/usr/src目錄,繼續安裝cmake

tar zxf cmake-3.6.1.tar.gz

cd cmake-3.6.1

./configure --prefix=/usr/local/cmake

wKiom1fGogOj6StTAAA9RB4CpKo646.png

編譯安裝

make && make install

wKioL1fGozWhA5OaAACHgvfGnu8874.png

切換回/usr/src目錄安裝MySQL數據庫

tar zxf mysql-5.7.14.tar.gz

cd mysql-5.7.14

/usr/local/cmake/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_BOOST=/usr/local/boost/include

wKioL1fGpDGgRCQlAAB94FCL-OM776.png

編譯安裝,漫長地等待。

make && make install

wKioL1fHj6CSfOCCAAB6a4CEq-A305.png

創建mysql用戶以及相關的目錄

useradd -M -s /sbin/nologin mysql

mkdir -p /usr/local/mysql/etc

mkdir -p /usr/local/mysql/data

mkdir -p /usr/local/mysql/log

mkdir -p /usr/local/mysql/run

wKioL1fH-2ignUaHAAASADOP-T8430.png

刪除默認配置文件/etc/my.cnf

rm -f /etc/my.cnf

wKioL1fH_T7wo_WNAAAKdnXzoAE850.png

新建配置文件 /usr/local/mysql/etc/my.conf 內容如下:

[mysqld]

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0


[mysqld_safe]     

log-error=/usr/local/mysql/log/mysqld.log

pid-file=/usr/local/mysql/run/mysqld.pid

wKioL1fHkVugk4JpAAAlCD1EiiQ516.png

爲目錄添加mysql用戶權限

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

wKiom1fJKOLCop6YAAAK24goYQc843.png

初始化數據庫,注意會生成臨時登錄賬戶和密碼。

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data

wKioL1fHkLnDlGIxAAB6evZ3_og083.png

啓動數據庫服務

/usr/local/mysql/bin/mysqld_safe &

wKiom1fHk5PTucXRAAAufzeVdo8476.png
使用生成的臨時密碼登錄數據庫

/usr/local/mysql/bin/mysql -u root -p

wKiom1fH_DOCvUYxAABBlxoR5S0744.png

修改數據庫登錄密碼

alter user 'root'@'localhost' identified by 'A2c@1B3';

wKiom1fHlYqhg4SAAAAQaRzSOjs364.png

修改啓動腳本文件 /usr/local/mysql/support-files/mysql.server 以下參數

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

mysqld_pid_file_path=/usr/local/mysql/run/mysqld.pid

wKioL1fHl_6zzVuGAABUXREsxtc532.png

測試啓動腳本

wKiom1fHmBjihJDpAAASi8KpsHk773.png

查看mysql進程與端口狀態

wKiom1fHmGawYbFbAABclctsOu0933.png切換回/usr/src目錄,安裝php。

tar zxf php-7.0.10.tar.gz

cd php-7.0.10

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/apache/bin/apxs --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-mbstring --with-curl --with-gd --enable-fpm

wKiom1fHmmbCnT4zAAAqnRIciVo572.pngwKiom1fHmpaRA0-ZAAA_7trj7jw720.png

編譯安裝

make && make install

wKiom1fHnNSxN6bbAABgJrT1PgE116.png

拷貝配置文件

cp php.ini-production /usr/local/php/etc/php.ini

wKioL1fHnVaCCHKaAAARYtJencI115.png

修改配置文件 /usr/local/php/etc/php.ini 修改參數,去掉前面的分號。

date.timezone = Asia/Shanghai

wKiom1fHnfejP_03AAANMlHlg4o597.png

修改Apache配置文件/usr/local/apache/conf/httpd.conf,修改ServerName並添加php索引。

wKioL1fHn3aBZj_FAAAZIGcdngU983.png

wKiom1fHnnfx1AXWAAATaebh8v4113.png

在末尾添加

<FilesMatch "\.ph(p[2-6]?|tml)$">

    SetHandler application/x-httpd-php

</FilesMatch>


<FilesMatch "\.phps$">

    SetHandler application/x-httpd-php-source

</FilesMatch>

wKioL1fHoziwkEKAAAA30Qo4Ulg132.png

在Apache文檔目錄創建php測試文件index.php

/usr/local/apache/htdocs/index.html

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

內容如下

<?php

phpinfo();

?>

wKioL1fHnvjQHN02AAAVMbifAXM906.png

啓動Apache服務,查看進程與端口狀態。

/usr/local/apache/bin/apachectl start

wKiom1fHn9Sy_v5tAABgtoUvQk0408.png

使用瀏覽器訪問服務器IP即可查看到php測試頁面正常顯示。

wKiom1fI9lWiC7ApAAEUBVcY_3I379.png

MySQL有關的信息

wKioL1fH2WCwYU6ZAADYW0k0LSg560.png

wKiom1fH2U7R1QDBAAAwj2kBj8I717.png

創建Apache與MySQL開機自啓動腳本

cp /usr/local/apache/bin/apachectl /etc/init.d/

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

編輯/etc/init.d/apachectl添加

# chkconfig: 2345 65 35

# description: A very fast and reliable apache engine.

wKiom1fH1EyRSXfAAAA_iM_sB78669.png

添加到chkconfig服務管理

chkconfig --add apachectl

chkconfig --add mysql

wKioL1fH1KvQ06tpAAAd0R0qLaA764.png

關於MySQL的error日誌記錄的時間始終比系統時間慢8個小時的問題!

wKiom1fIA32BHpYXAABXbG6DO8g398.png

是因爲MySQL 5.7版本中新增了 log_timestamps 這個參數,而且默認採用UTC時間。

wKioL1fIBAvQAUttAAAW0Qj7SS8663.png

將其修改爲系統時間即可

SET GLOBAL log_timestamps = SYSTEM;

wKiom1fIBHLDJu-4AAAkmydTwmU296.png

這樣設置的全局變量在mysql服務重啓後便會失效,若要永久生效需要在配置文件 /usr/local/mysql/etc/my.cnf 中加入

log_timestamps=SYSTEM

wKiom1fICS7TBKh8AAA0Kmbfi0M936.png-wh_50

重啓MySQL服務 service mysql restart,再次查看error日誌,發現已經與系統時間一致。

wKiom1fICYqhyC1MAACBbyZisIc884.png-wh_50



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章