源碼安裝LAMP

 實驗環境:redhat 企業版 5.4
           httpd-2.2.19.tar.bz2
           mysql-5.5.15-linux2.6-i686.tar.gz
           php-5.3.7.tar.bz2

需要的軟件
 Development Libraries
 Development Tools
 Legacy Software Development
 X Software Development
 GNME Software Devleopment
 KDE Software Development
確保以上包已被安裝
 
將軟件考入管理員家目錄下
[root@localhost ~]# ll -h
總計 171M
-rw------- 1 root root 1.2K 02-09 22:23 anaconda-ks.cfg
drwxr-xr-x 2 root root 4.0K 03-18 17:11 Desktop
-rwxrw-rw- 1 root root 5.1M 2011-05-22 httpd-2.2.19.tar.bz2
-rw-r--r-- 1 root root 35K 02-09 22:23 install.log
-rw-r--r-- 1 root root 4.0K 02-09 22:22 install.log.syslog
-rwxrw-rw- 1 root root 155M 2011-07-15 mysql-5.5.15-linux2.6-i686.tar.gz
-rwxrw-rw- 1 root root 11M 2011-08-18 php-5.3.7.tar.bz2
將以上軟件分別解壓縮
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar -zxvf /root/mysql-5.5.15-linux2.6-i686.tar.gz
[root@localhost local]# ll
總計 76
drwxr-xr-x 2 root root 4096 2008-08-08 bin
drwxr-xr-x 2 root root 4096 2008-08-08 etc
drwxr-xr-x 2 root root 4096 2008-08-08 games
drwxr-xr-x 2 root root 4096 2008-08-08 include
drwxr-xr-x 2 root root 4096 2008-08-08 lib
drwxr-xr-x 2 root root 4096 2008-08-08 libexec
drwxr-xr-x 13 root root 4096 03-18 17:17 mysql-5.5.15-linux2.6-i686
drwxr-xr-x 2 root root 4096 2008-08-08 sbin
drwxr-xr-x 4 root root 4096 02-09 22:09 share
drwxr-xr-x 2 root root 4096 2008-08-08 src
root@localhost local]# cd src
[root@localhost src]# tar -jxvf /root/httpd-2.2.19.tar.bz2
[root@localhost src]# tar -jxvf /root/php-5.3.7.tar.bz2
[root@localhost src]# ll
總計 8
drwxr-xr-x 11 sun sun 4096 2011-05-21 httpd-2.2.19
drwxr-xr-x 13 1000 1000 4096 2011-08-17 php-5.3.7
 
配置mysql
[root@localhost src]# cd ../local/mysql-5.5.15-linux2.6-i686/
[root@localhost mysql-5.5.15-linux2.6-i686]# less INSTALL-BINARY
根據提示步驟配置

創建mysql系統賬號
[root@localhost mysql-5.5.15-linux2.6-i686]# groupadd mysql
[root@localhost mysql-5.5.15-linux2.6-i686]# useradd -r -M -g mysql mysql
修改mysql目錄下的所屬組及所屬用戶
[root@localhost mysql-5.5.15-linux2.6-i686]# chown -R mysql .
[root@localhost mysql-5.5.15-linux2.6-i686]# chgrp -R mysql .
[root@localhost mysql-5.5.15-linux2.6-i686]# ll
總計 76
drwxr-xr-x 2 mysql mysql 4096 03-18 17:16 bin
-rw-r--r-- 1 mysql mysql 17987 2011-07-14 COPYING
drwxr-xr-x 4 mysql mysql 4096 03-18 17:16 data
drwxr-xr-x 2 mysql mysql 4096 03-18 17:17 docs
drwxr-xr-x 3 mysql mysql 4096 03-18 17:16 include
-rw-r--r-- 1 mysql mysql 7604 2011-07-14 INSTALL-BINARY
drwxr-xr-x 3 mysql mysql 4096 03-18 17:17 lib
drwxr-xr-x 4 mysql mysql 4096 03-18 17:16 man
drwxr-xr-x 10 mysql mysql 4096 03-18 17:16 mysql-test
-rw-r--r-- 1 mysql mysql 2552 2011-07-14 README
drwxr-xr-x 2 mysql mysql 4096 03-18 17:16 scripts
drwxr-xr-x 27 mysql mysql 4096 03-18 17:16 share
drwxr-xr-x 4 mysql mysql 4096 03-18 17:17 sql-bench
drwxr-xr-x 2 mysql mysql 4096 03-18 17:17 support-files
使用mysql用戶初始化mysql
[root@localhost mysql-5.5.15-linux2.6-i686]# scripts/mysql_install_db --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK
 
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
 
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
 
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
 
Alternatively you can run:
./bin/mysql_secure_installation
 
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
 
See the manual for more instructions.
 
You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &
 
You can test the MySQL daemon with mysql-test-run.pl
cd ./mysql-test ; perl mysql-test-run.pl
 
Please report any problems with the ./bin/mysqlbug script!
將mysql目錄下除了data目錄的所有者重新改回管理員
[root@localhost mysql-5.5.15-linux2.6-i686]# chown -R root .
[root@localhost mysql-5.5.15-linux2.6-i686]# chown -R mysql data
[root@localhost mysql-5.5.15-linux2.6-i686]# ll
總計 76
drwxr-xr-x 2 root mysql 4096 03-18 17:16 bin
-rw-r--r-- 1 root mysql 17987 2011-07-14 COPYING
drwxr-xr-x 5 mysql mysql 4096 03-18 17:41 data
drwxr-xr-x 2 root mysql 4096 03-18 17:17 docs
drwxr-xr-x 3 root mysql 4096 03-18 17:16 include
-rw-r--r-- 1 root mysql 7604 2011-07-14 INSTALL-BINARY
drwxr-xr-x 3 root mysql 4096 03-18 17:17 lib
drwxr-xr-x 4 root mysql 4096 03-18 17:16 man
drwxr-xr-x 10 root mysql 4096 03-18 17:16 mysql-test
-rw-r--r-- 1 root mysql 2552 2011-07-14 README
drwxr-xr-x 2 root mysql 4096 03-18 17:16 scripts
drwxr-xr-x 27 root mysql 4096 03-18 17:16 share
drwxr-xr-x 4 root mysql 4096 03-18 17:17 sql-bench
drwxr-xr-x 2 root mysql 4096 03-18 17:17 support-files
重做關於內存的配置文件
[root@localhost mysql-5.5.15-linux2.6-i686]# cp support-files/my-large.cnf /etc/my.cnf
在後臺啓動mysql
[root@localhost mysql-5.5.15-linux2.6-i686]# bin/mysqld_safe --user=mysql &
[1] 8348
[root@localhost mysql-5.5.15-linux2.6-i686]# 120318 17:57:55 mysqld_safe Logging to '/usr/local/mysql-5.5.15-linux2.6-i686/data/localhost.localdomain.err'.
120318 17:57:55 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.5.15-linux2.6-i686/data
查看監聽端口,表示已經啓動成功
[root@localhost mysql-5.5.15-linux2.6-i686]# netstat -utpln|grep mysql
tcp        0      0 :::3306            :::*       LISTEN      8412/mysqld
設置啓動配置文件
[root@localhost mysql-5.5.15-linux2.6-i686]# cp support-files/mysql.server /etc/init.d/mysqld
將頭文件和庫文件連接到系統默認的位置
[root@localhost mysql-5.5.15-linux2.6-i686]# ln -s /usr/local/mysql/include/ /usr/include/mysql [root@localhost mysql-5.5.15-linux2.6-i686]# vim /etc/ld.so.conf.d/mysqld.conf
               /usr/local/mysql-5.5.15-linux2.6-i686/lib/
測試是否成功導入
[root@localhost mysql-5.5.15-linux2.6-i686]# ldconfig -v|grep mysql
/usr/local/mysql/lib:
         libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0
在系統變量插入mysq路徑

 

[root@localhost mysql-5.5.15-linux2.6-i686]# vim /etc/profile
[root@localhost mysql-5.5.15-linux2.6-i686]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin:/usr/local/mysql/bin
在chkconfig中添加mysql服務
[root@localhost mysql-5.5.15-linux2.6-i686]# chkconfig --add mysqld
[root@localhost mysql-5.5.15-linux2.6-i686]# chkconfig --list |grep mysqld
mysqld            0:關閉      1:關閉      2:啓用      3:啓用      4:啓用      5:啓用      6:關閉
至此可以用 service mysqld 來管理mysqld服務
[root@localhost mysql-5.5.15-linux2.6-i686]# service mysqld status
MySQL running (6571)                                       [ OK ]
 
 
配置apache
[root@localhost mysql-5.5.15-linux2.6-i686]# cd ../src/httpd-2.2.19/
[root@localhost httpd-2.2.19]# ll –h

 

可以看到有個configure可執行文件,說明該軟件包是未編譯的原文件
配置安裝文件
[root@localhost httpd-2.2.19]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd  --enable-ssl --with-z --enable-so
其中
--prefix=(安裝文件目錄)
--sysconfdir=(配置文件目錄)
--enable-ssl(啓用ss)
--with-z(使用特殊的庫文件)
編譯
[root@localhost httpd-2.2.19]# make
[root@localhost httpd-2.2.19]# make install
啓動httpd服務
[root@localhost httpd-2.2.19]# cd /usr/local/apache/
[root@localhost apache]# bin/apachectl start
查看監聽端口
[root@localhost apache]# netstat -utpln |grep httpd
tcp    0   0 :::80              :::*                        LISTEN      29231/httpd
修改環境變量
[root@localhost apache]# vim /etc/profile

 

重新讀取配置文件
[root@localhost apache]# . /etc/profile
查看環境變量
[root@localhost apache]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/usr/local/apache/bin:/root/bin
此時可以直接用
[root@localhost include]# apachectl stop
[root@localhost include]# apachectl start
將頭文件和庫文件連接到系統默認的位置
 [root@localhost apache]# vim /etc/ld.so.conf.d/httpd.conf
               /usr/local/apache/lib/
測試是否成功導入
[root@localhost apache]# ldconfig -v|grep apache
/usr/local/apache/lib:
[root@localhost apache]# cd /usr/include/
[root@localhost include]# ln -s /usr/local/apache/include/ httpd
[root@localhost include]#
 測試apache安裝成功

 
Php
 
[root@localhost php-5.3.7]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all --with-xmlrpc --with-png-dir --with-jpeg-dir --with-zlib --with-gd
其中
--prefix= 指明安裝位置
--with-apxs2= 指明調用模塊
--with-mysql= 指明mysql
--wtih-mysqli= 指明mysql接口
--enable-mbstring=all 支持的字符集
--with-xmlrpc 支持xml
--with-png 支持的圖形格式
--with-jpeg 支持的圖形格式
--with-zlib
--with-gd 支持壓縮
 
[root@localhost php-5.3.7]#make
[root@localhost php-5.3.7]#make install
 

[root@localhost php-5.3.7]# cd /usr/local/php/
[root@localhost php]# ll
總計 20
drwxr-xr-x 2 root root 4096 03-19 10:37 bin
drwxr-xr-x 2 root root 4096 03-19 10:37 etc
drwxr-xr-x 3 root root 4096 03-19 10:36 include
drwxr-xr-x 3 root root 4096 03-19 10:36 lib
drwxr-xr-x 3 root root 4096 03-19 10:36 man
修改apache的主配置文件

 

  

[root@localhost php]#vim /etc/httpd/httpd.conf
重啓apache服務
[root@localhost php]#  apachectl stop
[root@localhost php]#  apachectl start
編輯一個測試頁
[root@localhost php]# cd /usr/local/apache/htdocs/
[root@localhost htdocs]# mv  index.html  index.php
[root@localhost htdocs]# vim index.php
 

測試php成功

 

 

重新編輯頁面測試mysql是否連接成功
[root@localhost htdocs]# vim index.php

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