Linux--Web应用服务和MySQL数据库



(1)  WWW是一种交互式图形界面的Internet服务,具有强大的信息连接功能,是

人们在网上查找、浏览信息的主要手段。它使得成千上万的用户通过简单的

图形界面就可以获取各个大学、组织、公司等的最新信息和各种网上服务。

许多公司建立了主页,利用Web在网上发布消息。

如果想通过主页进行宣传,就必须将主页放在一个Web服务器上。用户可以

注册一个域名,申请一个IP 地址,用Linux架设一台WWW服务器,然后

让ISP将这个IP地址解析到Linux主机上,将主页存放在这个Web服务器上,

通过它将主页向外发布。

目前,在世界各地有许多公司和学术团体,根据不同的计算机系统,开发出

不同的WWW服务器,如Apache、CERNhttpd、NCSAhttpd、Plexus、Microsoft

InternetInformation System、WebSite等,在Unix/Linux系统中常用是Apache。

Apache是世界排名第一的Web服务器,根据多年跟踪全球WEB服务器软件

市场的美国Netcraft公司(http://www.netcraft.com)所作的调查,世界上百分

之五十以上的Web服务器在使用Apache服务器。

(2)  MySQL是著名的免费数据库软件,使用通用的SQL查询语言;PHP是动态页

面语言,可以用来进行动态页面和网站的开发

1.  Apache服务器的搭建

(1)  安装服务器软件

进入软件文件夹

[root@lab root]# cd/root/labsoft

拷贝httpd-2.0.52.tar.gz到/usr/local/

[root@lab labsoft]# cp httpd-2.0.52.tar.gz /usr/local/

进入/usr/local/文件夹

[root@lab labsoft]# cd /usr/local/

解压缩httpd-2.0.52.tar.gz包

[root@lab local]# tar zxvf httpd-2.0.52.tar.gz

进入解压后的文件夹

[root@lab local]# cd httpd-2.0.52

配置软件

[root@lab httpd-2.0.52]# ./configure

编译软件

[root@lab httpd-2.0.52]# make

安装软件

[root@lab httpd-2.0.52]# make install

清除安装垃圾

[root@lab httpd-2.0.52]# make clean

安装结束后,apache的安装目录为

/usr/local/apache2

(2)  httpd.conf文件的配置

httpd.conf文件是apache的主配置文件。

进入配置文件夹

[root@lab httpd-2.0.52]#cd /usr/local/apache2/conf/

编辑httpd.conf文件

[root@lab conf]#vi httpd.conf

默认配置  我们修改的配置  说明

Timeout 300  Timeout 120  设置超时时间(s)

MaxKeepAliveRequests 100    最大请求时间

KeepAliveTimeout  15  KeepAliveTimeout5  活动请求等待时间(s)

MaxClients  150  MaxClients  250  最大进程数(prefork  MPM

为适用于UNIX的模块支持)

该参数是多少有一个基本的算法,例如512M的机器,一个Apache+PHP进程大概消耗4M内

存,则最高效率的进程数为512m/4m* 2=206,最大进程数为206*1.5=309

Listen 80    设定服务器监听的端口号

ServerAdmin you@example.com  ServerAdminstu@yahoo.com  设定管理员的邮箱地址

ServerName www.example.com:80  ServerName 127.0.0.1:80  设定服务器名称和端口号

DocumentRoot

"/usr/local/apache2/htdocs"

DocumentRoot

"/var/www/html"

文件存放位置

DirectoryIndex

index.html index.html.var

DirectoryIndex

index.html  index.html.var

index.php  index.htm

默认识别的首页名称

AddDefaultCharsetISO-8859-1  AddDefaultCharset GB2312  选择默认支持语言

为了可以支持PHP语言,在配置文件中添加以下两行:

LoadModule php4_module  modules/libphp4.so

AddType application/x-httpd-php .php

根据你的机器配置以上文件

(3)  启动和停止服务器

启动服务器

[root@lab conf]# /usr/local/apache2/bin/httpd-k start

停止服务器

[root@lab conf]# /usr/local/apache2/bin/httpd-k stop

重新启动服务器

[root@lab conf]# /usr/local/apache2/bin/httpd-k restart

(4)  测试

a)  在客户机的浏览器中输入http://服务器ip

b)  如果可以看到欢迎界面,就说明配置成功

c)  自己编写一个html文件index.html,并将其放在/var/www/html/目录下,然后

在浏览器中输入http://服务器ip/index.html,如果可以显示你文件的内容,说

明正常运行。

<HTML>

<HEAD>

<TITLE>CAIXINGYUN LINUX学习</TITLE>

</HEAD>

<BODY  bgcolor= yellow>

<P>这是一个HTML的测试文件</P>

</BODY>

</HTML>

2.  MySQL数据库的安装使用

(1)  增加mysql用户和组。mysql用户和组是为了运行MySQL所建立的系统帐号

增加mysql组

[root@lab root]#groupadd mysql

增加mysql用户

[root@lab root]#useradd -g mysql mysql

(2)  安装MySQL

将MySQL软件拷贝到/usr/local目录下

[root@lab root]#cp /root/labsoft/mysql-standard-4.0.25-pc-linux-i686.tar.gz /usr/local

进入/usr/local目录

[root@lab local]#cd /usr/local

解压缩mysql软件包

[root@lab local]#tar zxvf  mysql-standard-4.0.25-pc-linux-i686.tar.gz

建立符号链接

[root@lab local]#ln-s mysql-standard-4.0.25-pc-linux-i686 mysql

进入解压缩后的目录

[root@lab local]#cd mysql

创建安装库

[root@lab local]# scripts/mysql_install_db --user=mysql

改变文件用户属性  

[root@lab local]#chown –R root /user/local/mysql/ 

改变data文件夹用户

[root@lab local]#chown -R mysql data

改变文件所属组

[root@lab local]#chgrp -R mysql /usr/local/mysql/

(3)  启动MysQL

启动服务

[root@lab local]#/usr/local/mysql/bin/mysqld_safe --user=mysql&

(4)  连接与断开MySQL服务器

用root帐号登陆

[root@lab local]#/usr/local/mysql/bin/mysql-u root –p

如果成功地连接后,用户可以在“mysql>”提示符下输入QUIT随时断开:(也可以键入

control-D断开)。

mysql> QUIT

(5)  数据库的创建

创建该数据库使用下面的命令:

mysql> CREATE DATABASE lbuser;  (注意不要忘记最后的;号)

(6)  数据表的创建

选择数据库作为当前数据库,命令如下:

mysql> USE lbuser;

使用CREATE TABLE语句来创建数据表:

mysql> CREATE TABLE user (ID int primarykey,name VARCHAR(20)not null,

->password VARCHAR(20),

-> sexVARCHAR(2),email VARCHAR(50),

-> birthday DATE, city  VARCHAR(20));

(7)  数据记录的增加、删除与修改

a)  创建文本文件

先创建一个文本文件“user.txt”, 其格式如下:

1  liubing12345  男  lb@neuq.edu.cn 1968-04-03  秦皇岛

2  lyd12345  女  lyd@163.com \N  北京

创建此文件是为了使用LOAD DAT A语句增加记录

b)  装载文本文件“user.txt”到user表中:

mysql> LOAD DATA LOCAL INFILE "user.txt" INTO TABLE user;

c)  使用INSERT语句增加一条新记录:

mysql> INSERT INTO user

-> VALUES (3,‘jiangli’, ‘12345’, ‘女’, ‘lb@whpu.edu.cn’, ‘1972-10-18’, ‘武汉’);

d)  删除记录

删除在数据表user中新增加的“ID=2”的数据记录,语句如下:

mysql> DELETE FROM user WHERE ID=2;

e)  修改记录

要修改user数据表中的用户名为liubing的用户密码,可使用下面的语句:

mysql> UPDATE user SETpassword = "567890" WHERE name=liubing;

(8)  数据表记录的查询

mysql> SELECT* FROM user WHERE sex=“男”;

mysql> SELECT* FROM user WHERE sex="男" andID<100;

mysql> SELECTname,birthday,sex  FROM user WHERE sex="男" ORDER BY

birthday  DESC;

mysql> SELECT* FROM user WHERE name LIKE "j%";

mysql> SELECT sex, COUNT(*) FROM user GROUP BY sex;

(9)  为root用户增加口令:

第一种方法:

[root@lab local]#/usr/local/mysql/bin/mysqladmin-u root password 'new_password'

第二种方法:

[root@lab local]# mysql-u root mysql

mysql> UPDATE user SETPassword=PASSWORD('new_password')

WHERE user='root';

mysql> FLUSH PRIVILEGES;

3.  PHP连接MySQL数据库

(1)  PHP的安装

拷贝php软件包到/usr/local目录下

[root@lab root]# cp php-4.3.9.tar.gz /usr/local/

进入目录

[root@lab root]# cd /usr/local/

解压php软件包

[root@lab local]# tar zxvf php-4.3.9.tar.gz

配置软件

[root@lab local]# ./configure\

--with-mysql\

--with-apxs2=/usr/local/apache2/bin/apxs\

--enable-versioning\

--disable-debug\

--enable-track-vars\

编译软件

[root@lab conf]# make

安装软件

[root@lab conf]# make install

清除安装中生产的无用文件

[root@lab conf]# make clean

(2)  编辑httpd.conf

为了使得apache支持PHP,需在配置文件中加入

LoadModule php4_module modules/libphp4.so

AddType application/x-httpd-php .php

第一行配置文件中存在,大家只需找到他它,然后在它下面插入第二行就可以了

(3)  测试

重新启动apache

[root@lab root]#/user/local/apache2/bin/httpd-k start

在/usr/local/apache/htdocs下

新建文件index.php,内容如下:

<?phpinfo();?>

在浏览器中输入http://x.x.x.x/index.php

可以看见php的表以及信息就说明整合成功

x.x.x.x是服务器的IP

(4)  连接指定的数据库,并且获得数据

<HTML>

<HEAD>

<TITLE> 从数据库中取打开的当前记录 </TITLE>

</HEAD>

<BODY>

<?php

$dbname='lbuser';

$dbtable='user';

$myconn=mysql_connect("localhost","root","这里填入你设定的root密码");

mysql_select_db("lbuser");

$SQL_String="Select* from userorder by id ";

$Exec=mysql_query($SQL_String,$myconn);  

mysql_close($myconn);

for($i=1;$i<4;$i++){

$record=mysql_fetch_row($Exec);

echo "user:";

echo $record[1];

echo "<br>";

echo "";

echo $record[2];

echo "<br>";

echo "<br>";

}

?>

</BODY>

</HTML>

上一篇:Template Method(模板方法)模式


下一篇:设计模式之Singleton模式和Strategy模式是什么