一、mysql編譯安裝(5.7版本)
1. 下載下傳存放路徑:/usr/local/src/
2. 解壓檔案移至程式安裝路徑/usr/local/mysql
mv mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql
3. 初始化,擷取資料庫初始密碼
useradd -M -s /sbin/nologin mysql
mkdir -p /data/mysql
chown mysql /data/mysql
cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --datadir=/data/mysql
./bin/mysql_ssl_rsa_setup --datadir=/data/mysql
4. 拷貝并編輯配置檔案和啟動腳本
cp support-files/my-default.cnf /etc/my.cnf
編輯内容:
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
socket = /tmp/mysql.sock
cp support-files/mysql.server /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql
5. 啟動服務,用初始密碼登陸資料庫,修改密碼
/etc/init.d/mysqld start
/usr/local/mysql/bin/mysql -uroot -p'初始密碼'
mysql>set password = password('新密碼');
注:
如果忘記密碼,則修改配置/etc/my.cnf,在[mysqld]下面增加一行
skip-grant-tables
免密碼登入後,重設密碼,再去掉skip-grant-table
update user set authentication_string=password('123333') where user='root';
二、Apache編譯安裝(2.4版本)
1.下載下傳源碼包
2. 解壓,配置編譯參數,安裝
./configure --prefix=/usr/local/apache2 \ #指定安裝目錄
--with-included-apr \ #apache跨平台運作,就是基于底層庫apr
--enable-so \ #讓apache核心裝載DSO
--enable-deflate=shared \ #支援網頁壓縮
--enable-expires=shared \ #支援 HTTP 控制
--enable-rewrite=shared \ #支援 URL 重寫
--with-pcre #一個Perl庫,相容正規表達式
make;make install
說明:檢測驗證方式 echo $?;過程中可能要求:“zlib-devel”和“pcre pcre-devel apr apr-devel”等庫檔案
常用選項:
1. 列出所有加載子產品,包括靜态和動态
指令 /usr/local/apache2/bin/apachectl -M
說明:動态子產品檔案目錄:/usr/local/apache2/modules
2. 列出所有加載靜态子產品
指令 /usr/local/apache2/bin/apachectl -l
3. 檢查apache配置檔案httpd.conf是否有文法錯誤
指令 /usr/local/apache/bin/apachectl -t
4. apache工作模式
說明:可以通過/usr/local/apache2/bin/apachetl -l 檢視
apache2.2 版本預設模式 :prefork
apache2.4 版本預設模式為:event
5. 檢視編譯配置幫助資訊
指令 ./configure --help | less
6. 檢視編譯配置參數
cat /usr/local/apache2/build/config.nice
注:
1)可以通過pid檔案關閉apahce
指令 kill ` cat /usr/local/apache2/logs/httpd.pid`
2)同一台實體機上運作多個版本的apache,隻需指定不同的安裝目錄;運作多個同一版本的副本,隻需指定不
同的配置檔案,如:httpd -f /usr/local/apache2/conf/httpd.conf
3) 如果apache需要的某些子產品沒有安裝,則可進入源碼包,找到需要編譯的子產品,使用apsx動态編
譯,如 /usr/local/apache2/bin/apxs -i -c mod_status.c ,需注意是否該子產品已靜态加載
三、PHP編譯安裝過程(7.0版本)
2. 解壓,配置編譯參數
./configure --prefix=/usr/local/php \ # 指定 php 安裝目錄
--with-apxs2=/usr/local/apache2/bin/apxs \ # 整合 apache,啟用apxs功能
--with-config-file-path=/usr/local/php/etc \ # 指定php.ini位置
--with-mysql=/usr/local/mysql \ # mysql安裝目錄,對mysql的支援
--with-libxml-dir \ # 打開libxml2庫的支援,libxml是一個用來解析XML文檔的函數庫
--with-gd \ # 是php處理圖形的擴充庫
--with-jpeg-dir \ # 打開對jpeg圖檔的支援
--with-png-dir \ # 打開對png圖檔的支援
--with-freetype-dir \ # 打開對freetype字型庫的支援
--with-iconv-dir \ # 打開iconv函數,種字元集間的轉換
--with-zlib-dir \ # zlib是提供資料壓縮用的函式庫
--with-bz2 \ # 打開對bz2檔案的支援
--with-openssl \ # openssl的支援,加密傳輸時用到的
--with-mcrypt \ # php 裡面重要的加密支援擴充庫,支援20多種加密算法和8種加密模式
--enable-soap \ #
--enable-gd-native-ttf \ # 支援TrueType字元串函數庫
--enable-mbstring \ # 多位元組,字元串的支援
--enable-sockets \ # 打開 sockets 支援
--enable-exif \ # 圖檔的中繼資料支援
--disable-ipv6 #
--with-mysqli
--with-mcrypt=/usr/local/libmcrypt
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-mysqli --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt=/usr/local/libmcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
編譯過程中需要安裝的包:
yum install freetype-devel libjpeg-devel libpng-devel bzip2 bzip2-devel openssl-devel xml2-devel libmcrypt libmcrypt-devel libjpeg-turbo-devel
可以借助第三方yum源下載下傳庫檔案或者安裝擴充源,如:
<a href="http://rpmfind.net/linux/rpm2html/search.php?query=libmcrypt-devel" target="_blank">http://rpmfind.net/linux/rpm2html/search.php?query=libmcrypt-devel</a>
apxs 自動幫助安裝擴充子產品用,安裝完之後子產品将會在apache目錄/usr/local/apache2/modules下顯示;其他編譯參數解釋,可以檢視下面連結:
<a href="http://www.oschina.net/question/17_10674" target="_blank">http://www.oschina.net/question/17_10674</a>
3. 安裝make;make install
4. 拷貝配置檔案
說明:拷貝檔案至安裝目錄etc子目錄下,編譯時已指定該路徑,并更名為php.ini
指令 cp /usr/local/src/php-5.6.26/php.ini-production /usr/local/php/etc/php.ini
常用選項
1. 檢視靜态編譯的子產品,動态子產品需要自己編譯
指令 /usr/local/php/bin/php -m
2. 檢視php相關的配置
說明:檢視編譯參數等,等同于用浏覽器檢視info.php檔案
指令 /usr/local/php/bin/php -i
注:php的函數或者子產品,下載下傳解壓之後是沒有configure檔案的,需要先執行/usr/local/php/bin/phpize解釋完檔案生成configure,才能執行./configure ;make;make install
四、Apache結合php過程
1. apache主配置檔案添加php解析
配置檔案/usr/local/apache2/conf/httpd.conf,找到
AddType application/x-gzip .gz .tgz
添加:
AddType application/x-httpd-php .php
說明:将.php的檔案交給php去解析,如果php5子產品沒有加載,即表示php沒有裝好,那麼Apache碰到自己識别不了的檔案,一般都會提示下載下傳
2. apache主配置檔案添加php索引首頁
找到:
<IfModule dir_module> DirectoryIndex index.html </IfModule>
改為:
<IfModule dir_module> DirectoryIndex index.html index.htm index.php</IfModule>
3. apache主配置檔案開啟web伺服器域名和端口号
1)去掉主機名注釋符
ServerName localhost:80
2)找到并修改:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all #2.4版本Require all grant
</Directory>
4. 啟動httpd服務
指令 /usr/local/apache2/bin/apachectl start
5. 啟動驗證
在網站預設資料目錄 /usr/local/apache2/htdocs下建立編輯一個phpinfo檔案,用浏覽器打開
本文轉自 huangzp168 51CTO部落格,原文連結:http://blog.51cto.com/huangzp/1906842,如需轉載請自行聯系原作者