用最新稳定版的apache+mysql+php编译安装(REDHAT9)

发表于:2007-07-04来源:作者:点击数: 标签:
呵呵,昨天用RPM包完成了该环境,下午偶就用源文件编译了一边,体验一下安装的乐趣 详细环境为redhat9+mysql4.1.11(binary)+apache1.3.33+php4.3.11 下面为详细步骤... 我的安装是以下面这篇文章为参考.但是安装中遇到了许多与该作者不同的情况. http://blog.csd
呵呵,昨天用RPM包完成了该环境,下午偶就用源文件编译了一边,体验一下安装的乐趣
详细环境为redhat9+mysql4.1.11(binary)+apache1.3.33+php4.3.11
下面为详细步骤...

我的安装是以下面这篇文章为参考.但是安装中遇到了许多与该作者不同的情况.
http://blog.csdn.net/jinetsunday/archive/2004/07/28/54214.aspx
该文为
Linux+Apache+Mysql+PHP典型配置

调试环境:Redhat9.0 Apache1.3.29 Mysql3.23.58 PHP4.3.4........

先安装MYSQL,作者说的是源码版的.我在我们学校的FTP上没找到那个版本,只找到好像是3.23.48版,结果编译出错.然后索性到官方网站
www.mysql.com上下了一个最新稳定版4.1.11下载下来以后./CONFIGURE时发现是已经编译好的了.按照上面的英文介绍弄了半天没弄出来.在BAIDU上搜了好半天,找到一篇台湾人写的文章,呵呵,正合适.主要内容如下:
http://webbs.kyit.edu.tw/viewtopic.php?p=30316
mysql从.56版本开始,因为GCC编译的问题,所以官方后来释出的都是编译过的版本(不需要make;make install),直接弄到自己的程序放置区就可以了,在此我把mysql放到/usr/local/mysql 
( /usr/local/是我的程序放置区,也是一般程序爱用的预设安装区域 ) 
底下首先我们得先把" 陋陋长 " 的数据夹名称改短一点,当然您也可以直接用连结方式 ln -s /home/project/mysql-3.23.58-pc-linux-i686 /usr/local/mysql 我的工作区域是/home,而这次的Apache,PHP和MySQL放在/home/project目录里头,用ln的话,/home/project/mysql-3.23.58-pc-linux-i686就绝对不能动到喔(当然如果你怕不小心删除,也可以搬移到别的地方去放),不然影响到的就是/usr/local/mysql喔 , 大家把他当成Win的快捷方式看待时,是不是感觉到很熟悉呢 ^^) 
 
回到主题,我使用的是乾坤大挪移喔 ^^ ,首先我先把他一长串的目录名称改成短短的mysql就好... 
[root@fily project]# mv mysql-3.23.58-pc-linux-i686 mysql 
[root@fily project]# 
 
接着我要把他放到心中的程序区/usr/local下 
[root@fily project]# mv mysql /usr/local 
[root@fily project]# 
这样子mysql就乖乖的从/home/project/mysql跑去/usr/local/mysql喽 
 
官方说明为了待会的mysql_install_db得先新增并设定数据库存放区域的权限 
[root@fily project]# mkdir -p /var/lib/mysql 
[root@fily project]# chown -R mysql:mysql /var/lib/mysql 
[root@fily project]# chown -R root:mysql /usr/local/mysql 
[root@fily project]# chown -R mysql:mysql /usr/local/mysql/data 
 
 
 
再来的步骤非常重要,所以我们先转换目录到/usr/local/mysql的目录下动作 ( cd /usr/local/mysql ) , mysql一切就绪了,再来的步骤就是初始化MySQL的数据库喽,初始化的程序在 ( scripts/mysql_install_db ),此时我们得先转换成mysql的使用者来做初始化动作 
 
[root@fily mysql]# su mysql 
[mysql@fily mysql]$ scripts/mysql_install_db 
Preparing db table 
Preparing host table 
Preparing user table 
Preparing func table 
Preparing tables_priv table 
Preparing columns_priv table 
Installing all prepared tables 
030928 13:50:13 ./bin/mysqld: Shutdown Complete 
 
 
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 ! 
This is done with: 
./bin/mysqladmin -u root password 'new-password' 
./bin/mysqladmin -u root -h fily.dyndns.org password 'new-password' 
See the manual for more instructions. 
 
You can start the MySQL daemon with: 
cd . ; ./bin/safe_mysqld & 
 
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory: 
cd sql-bench ; run-all-tests 
 
Please report any problems with the ./bin/mysqlbug script! 
 
The latest information about MySQL is available on the web at 
http://www.mysql.com 
Support MySQL by buying support/licenses at https://order.mysql.com 
 
[mysql@fily mysql]$ 
 
到这里,我们初始化步骤就完成喽 ! 接着我们把权限换回root 
 
[mysql@fily mysql]$ exit 
exit 
[root@fily mysql]# 
接着根据官方的manual.html所示,得改一下mysql下的目录与档案的权限 
 
[root@fily mysql]# chown -R root . 
[root@fily mysql]# chown -R mysql data 
[root@fily mysql]# chgrp -R mysql . 
[root@fily mysql]# 
 
这样就完成喽 ... 还等什么,一起启动MySQL吧 ... ^^ 
[root@fily mysql]# bin/safe_mysqld --user=mysql & 
[root@fily mysql]# Starting mysqld daemon with databases from /usr/local/mysql/data 
 
MySQL这样就启动成功喽 ^^ ... 接着别忘了设定root的密码 
[root@fily mysql]# bin/mysqladmin -u root password '你要设定的密码' 
[root@fily mysql]# 
 
开始登入测试,建立数据库后测试并离开 
[root@fily mysql]# bin/mysql -u root -p不需空格直接于-p后加上你的密码 
Welcome to the MySQL monitor. Commands end with ; or \g. 
Your MySQL connection id is 6 to server version: 3.23.58 
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 
 
mysql> create database Filytest; 
Query OK, 1 row affected (0.00 sec) 
 
mysql> connect Filytest 
Connection id: 9 
Current database: Filytest 
 
mysql> quit 
Bye 
[root@fily mysql]# 
 
MySQL这样就完完全全OK喽 ... 
接着你可以把 /usr/local/mysql/bin/safe_mysqld --user=mysql & 写入 /etc/rc.d/rc.local 让MySQL可以在开机的时候启动 ^^

呵呵,按他的步骤一次性搞定了!可惜11点宿舍要熄灯了.
第二天早晨起来编译APACHE一次成功.
接下来是PHP了.在配置安装过程中错误,找不到libjpeg.(so|a),然后下了个库文件.然后还没配置成.检查配置参数发现我可能不需要GD库吧,(闲杂我还不知道什么是GD呢),然后把配置参数改成如下:
./configure \
--prefix=/usr/local/php \
--with-mysql=/usr/local/mysql \
--enable-force-cgi-redirect \
--with-freetype-dir=/usr \
--with-ttf \
--with-gettext \
--with-iconv \
--with-zlib \
--with-xml \
--enable-calendar \
--with-apxs=/usr/local/apache/bin/apxs
然后过去了.HOHO~~~~
下来就没什么大问题了.花了半个小时装了个PHPWIND2,呵呵,能够使用.至此整个环境配置完成.

前几天在CHENGUANG上看见几个同学想建WIKI,呵呵,我也挺有兴趣的.可惜那个CHENGUANG管理员总不通过我的帐号认证,失去了一个交朋友的机会....算了,偶自己先试着做一下吧...
那些人估计都是研究生了,呵呵.......

大功已经告成,下来偶就要认真学习我的主课模拟电路了,HOHO.又是一个更大的挑战......

原文转自:http://www.ltesting.net