第一部分:编译环境的准备
#yum groupinstall "Development Libraries" "Development Tools" "Legacy Software Development" "X Software Development" .........准备编译环境必须的开发包
#lftp 192.168.0.254 .........到服务器上下载apache,http,php软件
第二部分:编译安装mysql
#tar xvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local ....解压包到/usr/local下
#cd /usr/local .........切换到/usr/local下
#ln -sv /usr/local/mysql-5.5.15-linux2.6-i686 /usr/local/mysql.....做一个链接,方便以后升级用(此处也可以重命名)
#cd mysql ..........切换到mysql目录
这里给大家说明如下:
1),mysql解压完后默认情况下以后的数据会在/usr/local/mysql/data下,但是我们为了应对以后数据的增加等情况,我们最好自己建立一个LVM,然后data数据单独存储在这个逻辑卷上
#fdisk /dev/sda ..........创建一个分区(这里省略步骤)
#pvcreate /dev/sda7 ..........创建PV
#vgcreate myvg /dev/sda7 ..........创建成VG卷组
#lvcreate -L 2G -n mydata myvg ..........创建LV逻辑卷
#mke2fs -j -L MYDATA /dev/myvg/mydata ..........格式化LV
#mount /dev/myvg/mydata /mydata ..........挂载LV
#vim /etc/inittab ..........使开机自动挂载
以下是创建一个mysql用户,因为mysql只能以mysql的身份运行
#groupadd -g 3306 mysql
#useradd -g mysql -s /sbin/nologin -u 3306 -M mysql .....创建mysql用户
#id mysql ..........查看mysql用户信息
#mkdir /mydata/data
#chown -R mysql:mysql /mydata ..........改变mydata下所有文件都
是mysql用户mysql组
以下是初始化mysql数据库--》
#cd /usr/local/mysql
#chown -R mysql:mysql . ...........改变当前目录所有文件权限
#scripts/mysql_install_db --user=mysql --datadir=/mydata/data.....这里
scripts是专门进行初始化的脚本, --user指定用户身份 --datadir指定数据要存放的目录位置
#ls /mydata/data ..........初始化之后data目录下会生成几个文件(如果存在则证明初始化成功)
#chown -R root:mysql . ..........将属主改为root(属组必须还是mysql)
以下是使mysql的启动可以使用service mysqld retart|start|stop--》
#cp support-files/mysql.server /etc/init.d/mysqld ....cp 后并且改名为mysqld
#chkconfig --add mysqld on .........加进自动启动列表(默认2345级别)
#cp support-files/my-large.cnf /etc/my.cnf.......创建符合自己机器的配置文件
#vim /etc/my.cnf ///在文件里面加入datadir = /mydata/data(指定数据存放位置)
#service mysqld start .........启动mysql
但是我们现在不能像rpm包安装那样直接使用mysql启动其命令行,因为默认/bin下没有mysql命令,以下就是更改使其能直接使用mysql
第一种),临时有效 export PATH=/usr/local/mysql/bin:$PATH
第二种),永久有效 vim /etc/profile 加入一行:
PATH=$PATH:/usr/local/mysql/bin
以下是让系统能够找到mysql的库文件位置
#vim /etc/ld.so.conf.d/mysql.conf 新建mysql.conf并且加入一行:
/usr/local/mysql/lib
#ldconfig -v ...........重新加载并显示当前库文件路径
以下是让系统能够找到mysql的头文件位置
#ln -sv /usr/local/mysql/include /usr/include/mysql .....把头文件链接过去是系统能找到
以下是让系统能够找到mysql的帮助文档
#vim /etc/man.config 加入一行
MANPATH /usr/local/mysql/man
到此为止,mysql全部配置完成
第二部分:httpd 的配置
#tar xvf httpd-2.2.19.tar.bz2
#cd httpd-2.2.19
#./configure --help | less ............查看以下configure能跟的选项
#./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-ssl --enable-modules=most --enable-mods-shared=most --enable-so.......编译httpd 这里做下解释 :--prefix指定安装路径 --sysconfdir 指定配置文件位置 --enable-ssl 安装ssl模块 --enable-modules=most 指定安装大多数的模块 --enable-mods-shared=most指定大多数的模块可以被共享 --enable-so指定apache可以动态装载模块(此项较为重要)
#make
#make install
这里要说明,大多数的源码安装软件的方式系统不会为用户生成一个用service可以启动的脚本,因此我们为了方便必须要手动区创建这样一个问价,以下就是创建httpd的过程:
#scp /etc/init.d/httpd 192.168.0.17:/root ..........从另外一台主机上copy一个httpd文件(这台主机需用rpm安装了httpd ,当然也可以自己手动创建一个,上述方法适用于菜鸟)
#/usr/local/apache/bin/apachectl start ..........这个文件可以起到启动httpd的作用,但是不能加到/etc/init.d下,也不能加入到chkconfig列表下,我们一般不使用这个命令启动httpd
#vim httpd ..........编辑我们拷过来的httpd
找到如下两行并且改为:
apachectl=/usr/local/apache/bin/apachectl
httpd=${HTTPD-/usr/local/apache/bin/httpd}
然后删除掉所有check有关的行
#cd /etc/httpd
#cp httpd.conf httpd.conf.2
#vim httpd.conf 更改如下内容:
找到DocumentRoot行 ;这里是网页存放的地方,如果想要更改位置可以在这里
编辑/etc/httpd/httpd.conf 文件加入一行:PidFile=/var/run/httpd.pid
#export PATH=$PATH:/usr/local/apache/bin(当然也可以设置成永久有效)
#cp httpd /etc/init.d
#chkconfig --add httpd
#service httpd start ........httpd 配置成功
第三部分:php的安装与配置
#tar xvf php-5.3.6.tar.bz2
#./configure --prefix=/usr/local/php5 --sysconfdir=/etc/php --enable-mbstring --with-apx2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql ....说明:
--prefix指定路径 --sysconfdir指定目录 --with-apx2加载为apache的一个模块 --with-mysql指定mysql的位置
#make install
以下是配置php的配置文件:
#cd php-5.3.6
#cp php.ini-production /usr/local/php5/lib/php.ini
此时你的apache仍然不能识别以php结尾的文件,这就需要一下内容步骤
#vim /etc/httpd/httpd.conf j加入以下内容:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
修改DirectoryIndex index.html 为:
DirectoryIndex index.php index.html
第四部分:检查我们的php是否能用
#cd /usr/local/apache/htdocs ..........切换到自己
httpd.conf文件设置的文件目录里面
#vim index.html 加入以下内容
phpinfo();
?> ..........如果能连接上可以显示php的测试页
#mv index.html index.php
#访问网址
第五部分:检查我们的php是否能连接上我们的mysql
#cd /usr/local/apache/htdocs
#vim index.php 加入以下内容
$link=mysql_connect('127.0.0.1','root','');
if ($link)
echo "success...."
else
echo "failture..."
?> ........如果连接成功则显示success...
..............................................OK!