Linux系列-Red Hat5平台下的LAMP网站服务搭建(三)

Linux 系列 -Red Hat5 平台下的 LAMP 网站服务搭建(三)
MySQL 数据库的安装、启动& 构建PHP 环境
上次咱们看到了 LAMP 网站服务(二)使用 awstats 分析 Web 日志 &httpd 服务的访问控制,其实都是在为后面的应用打基础。今天咱们将会进入到最后的准备环节,我将会为大家介绍 MySQL 数据库的安装和 PHP 环境的构建。
第一部分: MySQL 数据库的安装和启动控制
首先,介绍一下 MySQL.MySQL 是一个真正的多线程、多用户的 SQL 数据库服务器,基于客户端 / 服务器结构实现,具有功能强大、使用简单、管理方便、查询速度快、安全可靠等优点。而且 MySQL 是一个开源的数据库服务器软件,可发从 Internet 免费下载和使用。在 RHEL5 系统中,使用 RPM 包的方式也可发安装 MySQL 数据库,但是往往会缺失一些“不常用”的功能,而且 MySQL 被拆分成许多相互关联,依赖的 RPM 包,可能会让人对应该安装哪些包感到迷惑,为了确保可提供功能的完整性,方便管理员灵活定制,保持在整个 LAMP 架构中的可协调性。建议使用源码编译的安装方式。
下面是具体的安装过程
1. 安装MySQL
首先访问 MySQL 官方的下载页面 http://dev.mysql.com/downloads/ ,查找并下载 MySQL 软件的源码包,这时将使用 mysql- 5.0.56 .tar.gz 为例,介绍 MySQL 的编译安装过程。
1>. 创建运行 MySQL 数据库的系统用户、组。
[root@www ~]# useradd -M -s /sbin/nologin mysql
(如果已存在,则无需重复创建)
2>. 解压并释放源码包,并切换至展开的源码包目录。
[root@www mnt]# tar zxf mysql- 5.0.56 .tar.gz -C /usr/src/
[root@www mnt]# cd /usr/src/mysql- 5.0.56 /
[root@www mysql- 5.0.56 ]#
3>. 使用“ ./configure ”命令配置编译选项。
[root@www mysql- 5.0.56 ]# ./configure --prefix=/usr/local/mysql
./configure 命令的更多选项可以通过命令 ./configure �Chelp 查询)
4>. 编译并安装。
[root@www mysql- 5.0.56 ]# make ; install
5>. 安装后的调整
建立配置文件
[root@www mysql- 5.0.56 ]# cp support-files/my-medium.cnf /etc/my.cnf
说明:在展开的源码包目录中的“ support-files ”文件夹下,提供了多个 MySQL 服务器的配置文件,分别适用于不同负载的数据库服务器,一般选择 my-medium.cnf 文件即可,该配置文件适用于中等负载的数据库,可以满足大多数企业的应有需求。
初始化数据库
[root@www mysql- 5.0.56 ]# /usr/local/mysql/bin/mysql_install_db --user=mysql
[root@www mysql- 5.0.56 ]# chown -R root.mysql /usr/local/mysql/
[root@www mysql- 5.0.56 ]# chown -R mysql /usr/local/mysql/var/
说明:以 mysql 用户的身份执行 mysql_install_db 脚本,对 MySQL 数据库进行初始化。修改相关目录的所有权,以便 mysql 用户可以读写数据库。
调整lib 库路径
[root@www mysql- 5.0.56 ]# echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
[root@www mysql- 5.0.56 ]# ldconfig
说明:由于 MySQL 安装到了非标准的路径中。所发还需要将 MySQL 的库文件路径“ /usr/local/mysql/lib/mysql ”加入到系统的库文件搜索路径中,以便在用到时能够自动搜索到。增加库文件搜索路径可以通过修改“ /etc/ld.so.conf ”文件实现。
2.MySQL 启动控制
1>. 使用 mysqld_safe 脚本安全启动服务。
在“ /usr/local/mysql/bin/ ”目录中,存放着管理 MySQL 服务器的脚本和程序。其中脚本文件 mysqld_safe 可用来安全启动 MySQL 服务器,结合命令选项“ ―user ”可指定运行服务的用户身份。 MySQL 服务器默认使用 TCP3306 端口提供服务。
[root@www mysql- 5.0.56 ]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
[1] 32342
Starting mysqld daemon with databases from /usr/local/mysql/var
[root@www mysql- 5.0.56 ]# netstat -ntpl | grep 3306
tcp        0      0 0.0.0 .0:3306                0.0.0 .0:*                   LISTEN      32368/mysqld
[root@www mysql- 5.0.56 ]#
说明:如果需要修改 mysql 服务监听的端口,可以编辑“ /etc/my.cnf ”配置文件,根据需要修改“[ mysql ]”配置段中的“ port ”行,例如改为“ port=12345 .
2>. mysql 添加为系统服务。
在展开的 mysql 源码包目录中的 support-files 文件夹下,“ mysql.server ”文件可用来作为 mysqld 服务的启动脚本。将其复制到“ /etc/init.d ”目录,并注意添加执行权限、使用带“ --add ”选项的 chkconfig 命令将其设为系统自启动服务即可。
[root@www mysql- 5.0.56 ]# cp support-files/mysql.server /etc/init.d/mysqld
cp: overwrite `/etc/init.d/mysqld'? y
[root@www mysql- 5.0.56 ]# chmod +x /etc/init.d/mysqld
[root@www mysql- 5.0.56 ]# chkconfig --add mysqld
[root@www mysql- 5.0.56 ]# chkconfig mysqld on
说明:以后就可发分别使用带“ start ”、“ stop ”、“ restart ”参数的 service 命令来启动、关闭、重启 mysqld 服务了。
3>. 设置 MySQL 程序的执行路径。
为了在执行“ mysql ”等命令和脚本工具时输入更方便,可以修改 PATH 环境变量,添加执行路径“ /usr/local/mysql/bin , 并将相关设置定义到系统的“ /etc/profile ”文件中去。
[root@www mysql- 5.0.56 ]# export PATH=$PATH:/usr/local/mysql/bin
[root@www mysql- 5.0.56 ]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
第二部分:构建PHP 环境
PHP PHP Hypertext Preprocessor (超级文本预处理语言)的缩写,是一种服务器端的 HTML 嵌入式脚本语言,最初由 Rasums Lerdorf 1994 年创建。 PHP 和语法混合了 C Java Perl 发及 PHP 自创的新语法,它能比 CGI 或者 Perl 更快地执行动态网页,更重要的是 PHP 几乎支持所有流行的数据库,在数据库层面的操作功能也十分强大。 PHP 能够支持多种操作系统平台,可在 UNIX Windows Linux 系统中配置使用。
. 安装PHP 软件包
PHP 的源代码可以从官方站点 http://www.php.net/downloads/ 中下载。今天我们将使用在前面已安装的 Apache 和刚刚装好的 MySQL 作为基础,以目前较为流行的 5.2.6 版本的源码包为例,介绍在 RHEL5 系统中部署 PHP 环境的过程。
1.       解压并释放下载的PHP 源码包到“/usr/src/ ”目录中,并切换进入展开的源码文件夹.
[root@www mnt]# tar xjf php- 5.2.6 .tar.bz2 -C /usr/src/
[root@www mnt]# cd /usr/src/
[root@www src]# ls
httpd- 2.2.9   kernels  mysql-5.0.56  php-5.2.6  redhat
[root@www src]#cd php- 5.2.6
2.       预先配置编译时的参数
[root@wwwphp- 5.2.6 ]#./configure--prefix=/usr/local/php5
--enable-mbstring--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql
--with-config-file-path=/usr/local/php5
... ...
Thank you for using PHP.
[root@www php- 5.2.6 ]#
说明:在上面的 ./configure 配置命令中,使用的五个命令选项,其含义如下:
--prefix: 设置 PHP 程序的安装路径
--enable-mbstring: 设置 PHP 支持多字节字符串
--with-apxs2: 设置 Apache 服务器提供的 apxs 模块支持程序的文件位置。
--with-mysql: 设置 MySQL 服务器程序的安装位置
--with-config-file-path: 设置 PHP 程序的配置文件所在的位置
3. 编译并安装
[root@www php- 5.2.6 ]#make && make install
说明:执行“ make ”和“ make install ”命令依此进行编译、安装。这两条命令可发使用“ && ”符号分隔,写到一行中。
4. 复制php.ini 配置文件
[root@www php- 5.2.6 ]# cp php.ini-dist /usr/local/php5/php.ini
[root@www php- 5.2.6 ]#
说明: PHP 安装程序通常不会复制配置文件,因此还需要复制源码目录中的 PHP 配置模板文件 php.ini-dist ,将其复制为 PHP 配置目录中的 php.ini 文件即可。
二.设置httpd.conf 文件
PHP 程序需要和 Web 服务器协同工作,才便于发挥其强大的作用。因此在编译安装好 PHP 程序以后,还要编辑 httpd 服务器的主配置文件 httpd.conf ,添加支持 PHP 环境的相关配置。要让 httpd 服务器支持 PHP 页面解析功能,可以使用“ LoadModule ”配置项加载 PHP 程序对应的模块,在 httpd.conf 文件中查找,确认存在配置行“ LoadModule php5_module modules/libphp5.so ”,如果没有则手动添加。还需要使用“ AddType ”配置项添加对 .php 类型的网页文件的识别。在 httpd.conf 文件中查找“ AddType ”关键字,参考相关配置添加配置行“ AddType application/x-httpd-php.php ”,如下所示:
[root@www php- 5.2.6 ]#vi /usr/local/apache2/conf/httpd.conf
… …
# Example:
# LoadModule foo_module modules/mod_foo.so
LoadModule php5_module        modules/libphp5.so    // 确认有此行
AddType application/x-httpd-php .php       // 添加此行
… …
[root@www php- 5.2.6 ]#
说明:其中,“ php5_module ”是模块名称,“ modules/libphp5.so ”是模块文件的位置。
若还需要将 Web 站点目录中的首页文件改为使用 index.php ,则还需要在 httpd.conf 文件中修改“ DirectoryIndex ”配置行,添加“ index.php ”项,以便 httpd 服务器能够正确搜索该首页文件。如下:
[root@www php- 5.2.6 ]#vi /usr/local/apache2/conf/httpd.conf
… …
<IfModule dir_module>
    DirectoryIndex index.html index.php    (找到此行,添加 index.php
</IfModule>
… …
[root@www php- 5.2.6 ]#
三.测试PHP 运行环境
要想测试 PHP 环境是否能够正常工作,需要建立一个使用 PHP 语言编写的网页文件,并通过 httpd 服务器发布,在浏览器中进行访问。
1.       测试PHP Apache 的协同工作
编写一个 PHP 测试网页文件,使用“ phpinfo() ”函数显示服务器的 PHP 环境信息。
[root@www php- 5.2.6 ]# cat /usr/local/apache2/htdocs/pp.php
<?php
phpinfo();
?>
[root@www php- 5.2.6 ]#
有了该测试网页文件发后,就可发在浏览器中访问 http://www.zpp.com/pp.php 进行测试了,如果 PHP 解析功能正常,将会在浏览器页面中看到服务器中 PHP 程序的版本信息。如下图所示:
 Linux系列-Red Hat5平台下的LAMP网站服务搭建(三)_第1张图片
说明:咱们还是用的上次 Apache 服务器和 MySQL 的环境,主机名名是 www.zpp.com
2.       测试PHP MySQL 数据库的协同工作
刚刚我们测试了 PHP Apache 的协同工作,现在我们再次编写一个 PHP 测试网页文件,添加简单的数据库操作命令,用行测试与 MySQL 服务器的连接、查询等操作。
[root@www php- 5.2.6 ]# cat /usr/local/apache2/htdocs/ppdb.php
<?php
$link=mysql_connect(‘localhost’,’’);
If(!$link) echo “Fail !!”;
Else echo “Success !!”;
Mysql_close();
?>
[root@www php- 5.2.6 ]#
现在我们在浏览器中访问 http://www.zpp.com/ppdb.php 进行测试,可以看到测试成功!
 
  好了,本次我们看到了 MySQL 数据库的安装、启动以及构建 PHP 环境,下次我们会看到 部署 Discuz! 论坛及安装 phpMyAdmin 数据库管理套件。

你可能感兴趣的:(linux,lamp,red,休闲,hat)