目标

Ü        在Windows上安装与配置MySQL

Ü        在Windows上安装与配置Apache

Ü        在Windows上安装与配置PHP

一般情况下,使用PHP开发的Web网站是在Linux操作系统下运行的,它与在Linux上运行的Apache Web服务器、MySQL数据服务器构成了著名的“LAMP”技术(Linux、Apache、MySQL、PHP的首字母构成)。

LAMP一词由Michael Kunze在1998年为德国一家计算机杂志编写一篇关于自由软件如何成为商业软件替代品的文章时创造的。 (杨, 谭, & 于, 2008)

LAMP所代表的不仅仅是自由和开发,而且LAMP构成了强大的、高性能Web应用平台,具有易于开发、更新速度快、安全性高、成本低的特点,因此被很多开发者视为“黄金组合”。当前,国内外最知名的三大BBS软件提供商IPB、VBB、PHPBBS均基于LAMP平台。在国内,据PHPCHINA资料统计,在中国排名前200名的网站中就61%采用了LAMP平台。 (杨, 谭, & 于, 2008)

LAMP的迅速发展对于Java和.Net等商业软件构成了严重的威胁。据美国互联网市场调研机构NetCraft(www.netcraft.co.uk)发布的2008年1月份的网站统计数据表明,基于Linux的Apache依然是网站的第一选择,市场份额为50.6%,而快速崛起的Web2.0网站,半数以上也都采用了LAMP技术。 (杨, 谭, & 于, 2008)

因此掌握LAMP是进行PHP Web开发和运营的基本前提。然而对于很多的PHP开发者来说,Windows似乎是一个更容易使用、也更愿意使用的操作系统,而且在Windows上开发的PHP程序可以略作修改或直接移植到Linux系统上去。因此作为纯粹的PHP开发人员,Linux不是必须的(当然,如果想要作为产品运行,则还需要掌握如何在Linux上安装部署系统),他们所需要的是如何在自己喜欢的Windows系统上安装配置Apache、MySQL和PHP,我们称之为WAMP。

在本章,我们将介绍如何在Windows上安装配置Apache、MySQL和PHP。我们将在附录中介绍有关LAMP的安装配置。

1.1      安装与配置Apache

Apache Web服务器虽然在近年的市场占有率有所下降(2005年11月时曾接近80%),但NetCraft发布的2010年三月的统计数据说明,Apache服务器仍然占第一位,有54%左右,比第二位的Microsoft IIS的24%左右高出近2倍。这意味着这个开源软件将继续成为互联网上应用最广泛的Web服务器。

1.1.1 Apache简介

在Web服务器发展的初期,美国架构超级计算机应用中心(NCSA)在1995年创建了当时一流的Web服务器。然而,NCSA Web服务器的主要开发人员后来同时离开了NCSA,使得这个服务器项目就停顿下来。与此同时,那些使用NCSA Web服务器的人们开始交换他们用于该服务器的补丁程序,他们也很快认识到处理管理这些补丁程序的论坛的重要意义。就这样,诞生了Apache Group。这以团体使用NCSA Web服务器的代码,创建了称为Apache的Web服务器软件。Apache最初是从NCSA Web服务器内核代码和一大堆补丁程序中衍生出来的。经过短短的几年时间,Apache已经称为使用最广泛的Web服务器软件,在服务器市场中占绝对优势。

Apache是一个免费的软件,用户可以免费从Apache的官方网站下载。任何人都可以参加其组成部分的开发。Apache允许世界各地的人对其提供新特性。当新代码提交到Apache Group后,Apache Group对其具体内容进行审查并测试和质量检查。如果他们满意,该代码就会被集成到Apache的主要发行版本中。

Apache的其他主要特征有:

l         支持最新的HTTP协议:是最先支持HTTP1.1的Web服务器之一,其与新的HTTP协议完全兼容,同时与HTTP1.0、HTTP1.1向后兼容。Apache还为支持新协议做好了准备。

l         简单而强大的基于文件的配置:该服务器没有为管理员提供图形用户界面,提供了一个简单但是功能异常强大的配置文件。用户可以根据需要用这个文件随心所欲的完成自己希望的Apache配置。

l         支持通用网关接口(CGI):采用mod_cgi模块支持CGI。Apache支持CGI/1.1标准,并且提供了一些扩充。

l         支持虚拟主机:是首批既支持IP虚拟主机又支持命名虚拟主机的Web服务器之一。

l         支持HTTP认证:支持基于Web的基本认证。它还有望支持基于消息摘要的认证机制。

l         内部集成Perl:Perl是CGI脚本编程的事实标准。Apache对Perl提供了良好的支持,通过使用其mod_perl模块,还可以将Perl的脚本装入内存。

l         集成代理服务器:用户还可以选择Apache作为代理服务器。

l         支持SSL:由于版本法和美国法律在进出口方面的限制,Apache本身不支持SSL。但用户可以通过安装Apache的补丁程序集合(Apache-SSL)使得Apache支持SSL。

l         支持HTTP Cookie:通过支持Cookie,可以对用户浏览Web站点进行跟踪。

Apache可以到官方网站下载Apache的最新安装程序。

1.1.2 安装Apache

Windows下安装Apache与安装其他Windows程序并无二致,其安装过程简要说明如下:

(1)   双击Apache安装文件,启动安装程序。

(2)   进行安装时,首先看到一个欢迎界面,然后单击下一步。

(3)   接下来会显示一个许可协议。如果你同意许可条款,单击下一步。

(4)   接下来看到对话框中将包含与Apache服务器有关的各项内容。阅读后单击下一步。

(5)   下面需要提供与服务器操作有关的一些内容,包括网络域、服务器名和管理的EMAIL地址。如果你知道这些信息,就可以填入,否则,前两项只需输入localhost,最后一项可以填入一个任意的EMAIL地址。以后可以在httpd.conf文件中修改这些信息。另外还会提示你确定Apache要作为面向所有用户的服务运行还是只用于当前用户。如果你希望Apache自动与操作系统一起启动(这也是推进的做法),可以选择Apache安装为面向所有用户的服务。完成设置后,单击下一步。

(6)   接下来会提选择安装类型:典型安装(Typical)或是定制安装(Custom)。除非有特殊的原因你不想安装Apache文档,否则请选择典型安装,然后单击“下一步”。如果不安装文档,可以选择定制安装,单击“下一步”,否则请选择典型安装,在下一个屏幕中将Apache Documentation选项取消。

(7)   下面将提示你选择目标文件夹。默认目标文件夹为C:/Program Files/Apache Group。你可以选择你自己想要安装的目录。不论你选择哪个目录,要记住。

(8)   单击“安装”完成安装。这就是安装Apache的全过程。

1.1.3 配置Apache

Apache Web服务器的主要配置文件为httpd.conf,在安装目录的conf目录下。下面简要介绍一些常用的配置参数。

(1)       ServerRoot指令

用来设置服务器目录的绝对路径,它通知服务器到哪个位置查找所有的资源和配置文件。在配置文件中指定的资源,有许多是相对于ServerRoot目录的。在Windows下,ServerRoot就是安装目。

(2)       Port指令

指定服务器运行在哪个端口上。默认为80,这是标准的HTTP端口号。用户在某些特定情况下可能要让服务器运行在另外的端口上,例如当用户想要运行一个测试服务器而不希望其他人知道时,或者80端口已经被其他程序占用了(如IIS),这时候可以指定服务器侦听非80端口。在Windows版本上用Listen指令完成该配置。修改httpd.conf里面关于Listen的选项,例如:

Listen 8000指令就是使Apache监听8000端口。而如果要同时指定监听端口和监听地址,可以使用:

Listen 192.168.20.10:80

(3)       ServerName指令

用来设置服务器将返回的主机名,它应该被设置为一个完全限定的域名。例如,将它设置为www.yourserver.com而不是简单的www。如果服务器通过Internet访问而不是仅仅在局域网中访问,该设置尤为重要。如果你自己没有域名或只在局域网内使用,你可以将它设置为自己的ip地址。

(4)       DocumentRoot指令

设置为文档目录的绝对路径,该路径是Apache提供文件的顶级目录,也就是网页存放的目录。在默认情况下,它被设置为安装目录下的htdocs目录。例如,如果设置DocumentRoot为D:/htdocs,那么当访问http://localhost/index.html时实际就是访问D:/htdocs目录下的index.html文件。需要注意的是Windows路径中的“/”该为“/”。

(5)       DirectoryIndex指令

指明作为目录索引的文件名,例如,当请求的URL为http://www.server.com/Directory/时,指明哪个文件作为目录的索引,即默认访问的文件。通常在这里放入许多文件名非常有用,这样当index.html(默认值)找不到时,可以使用另一个文件替换。该指令最有用的应用是在目录中有一个CGI程序运行,作为默认的动作。

其他的一些指令用作服务器的性能调整等作用,需要的时候可以查询Apache文档。

除了上述的几个指令外,还需要了解如何进行访问控制。要配置默认可以使用的选项,需要使用Options指令。

例如,在httpd.conf文件中,可以见到如下清单:

#

# Aliases: Add here as many aliases as you need(with no limit). The format

# is Alias fakename realname

#

# Note that if you include a trailing / on fakename then the server will

# require it to be present in the URL. So “/icons” isn’t aliased in this

# example, only “/icons/”. If the fakename is slash-terminated, then the

# realname must also be slash terminated, and if the fakename omits the

# trailing slash, the realname must also omit it.

#

# We include the /icons/ alias for FancyIndexed directory listings. If you

# do not use FancyIndexing, you may comment this out.

#

Alias /icons/ “/var/www/icons/”

<Directory “/var/www/icons”>

Options Indexes MultiViews

AllowOverride None

Order allow, deny

Allow from all

</Directory>

1.       Options指令

Options可以为None、All或者任何Indexes、Includes、FollowSymLinks、ExecCGI或者MultiViews的组合。MultiViews不包含在All中,必须显示指定。这些选项解释如下。

None:该目录没有启用任何可用的选项。

All:该目录启用了所有选项,除了MultiViews。

Indexes:当Index.html文件或者另一个DirectoryIndex文件不存在时,目录中的文件列表将作为HTML页产生,显示给用户。

Includes:该目录允许服务器侧包含(SSI)。如果允许包含但是不允许在包含中有exec选项,则可以写为IncludesNoExec。基于安全的原因,对于没有安全控制权限的目录,如UserDir目录,该选项是一个很好的主意。

FollowSymLinks:允许访问符号链接到文档目录的目录。这种方法不好,不要将整个服务器全部设置为该选项。对某个目录可以这样设置,但是在仅当有足够的理由时才这样设置。该选项是一个潜在的安全隐患,因为允许Web用户跳出文档目录以外,并且可能潜在地允许用户访问文件系统的分区,而这些地方时不希望其他人访问的。

ExecCGI:即使该目录不是ScriptAlias化的目录,也在其中允许CGI程序。

MultiViews:该选项是mod_negotiation模块的一部分。当客户请求的文档没有找到时,服务器试图计算最适合客户请求的文档。

2.       AllowOverrides指令

AllowOverrides指令指定.htaccess文件可以覆盖的选项。可以对每个目录进行设置。例如,可以对主要文档root和UserDir目录的覆盖有不同的标准。该功能对于用户目录特别有用,在这些目录中用户没有访问服务器配置文件的权限。

AllowOverrides可以设置为All或者Options.htaccess、FileInfo.htaccess、AuthConfig.htaccess以及Limit.htaccess选项的组合这些选项含义如下。

All:表示不读取.htaccess文件配置内容。

Options.htaccess:文件可以为该目录添加没有在Options指令中列出的选项。

FileInfo.htaccess:文件包含修改文档类型信息的指令。

AuthConfig.htaccess:文件可能包含验证指令。

Limit.htaccess:文件可能包含allow、deny、order指令。

3.       order指令

Order只能设置为Order allow, deny或Orderdeny,allow,表明用户是先设置允许的访问地址还是先设置禁止访问的地址。

4.       allow指令

指明允许访问的地址或地址序列。如allow from all指令表明允许所有IP来的访问请求。

5.       deny指令

指明禁止访问的地址或地址序列。如deny from all指令表明禁止所有IP来的访问请求。

1.2      安装与配置PHP

PHP当前的版本是5.3.2,即将发布的版本是6.0。我们以当前稳定版本5.3为基础介绍PHP。

1.2.1  下载PHP

PHP原本是在Linux下开发的,直到现在也任然是以源代码的形式发布,下载编译后配置运行。在Windows下你也可以这么做。但是更好的办法是去下载已近编译好的二进制包,下载地址为:http://windows.php.net/download/。PHP for Windows的二进制包有2种,是因不同编译器而产生的2中包。

l         VC9 X86版本。这个版本是由Visual Studio 2008编译器编译的,并且在运行时要求实现安装了Microsoft 2008 C++ Runtime (x86) 。VC9版本适合于与IIS一起使用。

l         VC6 X86版本。这个版本由传统的Visual Studio 6编译器编译。如果你的web服务器为Apache1或Apache2,你应该选择VC6版本。在本书中,我们使用Apache2.2,我们选择下载VC6 版本。

每个版本又分为线程安全(Thread safe)和非线程安全(NoneThread safe),我们选择线程安全版本。每个版本又分为解压缩版和msi安装版。这两种版本区别不大,都需要做手工配置。我们选择解压版。

1.2.2  安装PHP

我们下载的是VC6 线程安全的解压缩版本(php-5.x.x-Win32-VC6-x86.zip,x为某一子版本)。使用解压缩工具如winzip或winrar将此文件解压缩到你想安装PHP的目录,比如D:/PHP5。解压版的安装就此结束。

MSI安装版安装也比较简单,按照界面提示安装即可。

1.2.3  配置PHP

PHP的运行需要和Web服务的支持,故对PHP的配置同时需要配置Web服务器。本书中我们是Apache,需要对Apache的配置文件httpd.conf进行配置。

(1)       配置Apachehttpd.conf

l         PHP的在Apache下有三种运行方式,分别是作为Apache模块运行、作为CGI模式运行以及作为FastCGI模式运行。FastCGI模式作为正式运行时比较合适,在开发模式下,我们一般选用Apache模块方式。将PHP作为Apache模块运行,需要对Apache做如下配置:

#php Moudule handler configure

LoadModule php5_module "d:/php5/php5apache2_2.dll"

AddHandler application/x-httpd-php .php

# configure the path to php.ini

PHPIniDir "d:/php5"

l         上面的配置将使PHP处理任何以.php为扩展名的文件,即使这个文件还有其他的扩展名。比如文件名为my.php.txt也会被PHP模块处理。为了保证只有以.php结尾的文件被执行,还需要如下的配置;

<FilesMatch /.php$>

SetHandler application/x-httpd-php

</FilesMatch>

l         修改DocumentRoot为你放置php页面的目录。当然你也可以配置虚拟目录和虚拟主机。我了方便起见我们直接选择修改DocumentRoot。假如你的php文件放在D:/php5_Doc下,则:

DocumentRoot  "D:/ php5_Doc"

l         修改访问权限。在Directory指令下,修改默认路径,即<Directory  />下的内容。将“Deny from all”修改为“Allow from all”。

同时要修改D:/php5_Doc的房屋权限,相应的配置如下:

<Directory "D:/ php5_Doc">

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

</Directory>

l         添加默认文件。将index.php添加到<IfModule dir_module>指令下。如:

<IfModule dir_module>

DirectoryIndex index.php index.html index.htm

</IfModule>

(2)       配置PHPphp.ini

在安装目录下,有php.ini-development和php.ini-production文件,可以以这两个文件为基础,使他们分别作为开发和产品阶段的配置文件。现在我们主要用来开发,我们把php.ini-development修改为php.ini,并做如下配置:

l         doc_root选项。在php.ini文件中找到doc_root,将其修改为放置php的目录,要和Apache中的DocumentRoot一致。即:doc_root ="D:/ php5_Doc"。

l         extension_dir选项。此选项用于说明php扩展功能(比如数据库扩展)文件的目录。这些扩展功能将在需要时动态加载。在PHP的安装部分,我们把PHP安装在D:/PHP5,则:

extension_dir = "D:/php5/ext"

l         选择动态扩展项。在“Dynamic Extensions”配置小节中,可以根据我们的实际需要选择扩展功能。在本讲义中我们需要用到MySQL,我们需要选择MySQL的扩展。MySQL有2个扩展项,如果使用较新的MySQL5版本,我们选择php_mysqli.dll,如果是以前的版本这选择php_mysql.dll。选择扩展比较简单,将每行的第一个字符“;”去掉即可。其他的扩展可按实际需要选择。

1.2.4测试PHP的安装

如果MySQL还没有安装,我们现在把MySQL扩展注释掉(即添加“;”进行注释)。

在PHP的文档目录下(D:/ php5_Doc),创建一个测试文件(test.php),其主要内容如下:

<?php

phpinfo();

?>

接下来就该运行test.php来测试PHP安装的正确性了。

首先启动Apache,如果配置上有一些影响Apache启动的错误,则Apache不启动。

然后在浏览器地址栏输入: http://localhost:88/test.php。(端口88看Apache的实际配置情况。)

如能显示如图1.1所示内容,则表示配置正确,否则还有其他一些配置问题。

图1.1 phpinfo显示

1.3 安装与配置MySQL

MySQL是一个快速而有健壮的关系数据库系统(RDBMS)。一个数据库将允许高效的存储、搜索、排序和检索数据。MySQL服务器将控制对数据的访问,从而确保多个用户可以并发的使用它,同时提供了快速访问并且确保只有通过验证的用户才能获得数据访问。因此,MySQL是一个多用户、多线程的服务器。它使用了结构化查询语言(SQL),这是全球通用的标准数据库查询语言。MySQL是在1996发布的,但是其开发历史可以追溯到1979年。它是世界上最受欢迎的开源数据库之一 (Welling & Thomson, 2009)。

PHP和MySQL能在所有主流的操作系统和许多非主流系统中运行,而且它们有低成本、高性能与可扩展性高、易学习等优点,符合现在“绿色”“低碳”的观念,受到了广大开发者和使用者的喜爱。

1.3.1 安装MySQL

由于MySQL是开源软件,获取这个软件很简单,只需访问MySQL网站下载一个副本就行了。在本书中,我们介绍在Windows上MySQL版本。各个Linux版本一般都有自己对应的MySQL版本,安装也不复杂,相关内容请参考相应资料。

可用于Windows平台有以下三种版本:

Ø         基本。包含在Windows中有效运行MySQL所需的所有特性,但不包括可选组件,如基准测试工具。

Ø         完整。包含在Windows中有效运行MySQL所需的所有特性,也包括各个可选组件。

Ø         无安装程序。包含完整包中的所有特性,但没安装程序,解压即可。

一般情况下我们下载基本包或者完整包,这两个版本都有Windows安装程序,安装过程中会提示你选择各种配置信息。而无安装版,解压完后还需要编辑配置文件,一般推荐有经验的人使用。

与许多Windows程序一样,MySQL提供了一个方便的GUI安装程序来安装二进制包。过程如下。

(1)双击msi安装包启动安装过程。

(2)选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,也方便熟悉安装过程,如图1.1。

图 1.1 选择安装类型

(3)接受或修改安装目录。默认目录为C:/Program Files/MySQL/MySQL Server 5.1,可以修改此默认目录,如图1.2。在接下来的窗口中,单击OK或Next,然后单击下一个窗口中的Install。

图 1.2 选择安装目录

(4)等待安装结束,直到出现下面的界面,如图1.3,这里是询问你是否要注册一个mysql.com的账号,一般不需要了,点选“Skip Sign-Up”,按“Next”略过此步骤。

图1.3 注册MySQL用户

(5)mysql配置向导,不用像以前一样,自己手动乱七八糟的配置my.ini了,将 “Configure the Mysql Server now”前面的勾打上,点“Finish”结束软件的安装并启动mysql配置向导,如图1.4。

图1.4 启动配置

(6)选择配置方式,“Detailed Configuration(手动精确配置)”、“Standard Configuration(标准配置)”,我们选择“Detailed Configuration”,方便熟悉配置过程。图1.5。

图1.5 选择配置方式

(7)选择服务器类型,“Developer Machine(开发测试类,mysql占用很少资源)”、“Server Machine(服务器类型,mysql占用较多资源)”、“Dedicated MySQL Server Machine(专门的数据库服务器,mysql占用所有可用资源)”,大家根据自己的类型选择了,一般选“Server Machine”,不会太少,也不会占满。图 1.6。

图 1.5 选择服务器类型

图 1.6 选择数据库用途

(8)选择mysql数据库的大致用途,“Multifunctional Database(通用多功能型)”、“Transactional Database Only(服务器类型,专注于事务处理)”、“Non-Transactional Database Only”(非事务处理型,较简单,主要做一些监控、记数用,对MyISAM数据类型的支持仅限于non-transactional),随自己的用途而选择了,我这里选择“Multifunctional Database”,按“Next”继续。如图 1.6。

(9)对InnoDB Tablespace进行配置,就是为InnoDB 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏,当然,对数据库做个备份就没问题了,这里不详述。这里没有修改,使用默认位置,直接按“Next”继续。如图1.7。

图1.7 数据库文件位置

(10)选择您的网站一般mysql访问量,同时连接的数目,“Decision Support(DSS)/OLAP(20个左右)”、“Online Transaction Processing(OLTP)(500个左右)”、“Manual Setting(手动设置,自己输一个数)”,我这里选“Online Transaction Processing(OLTP)”,自己的服务器,应该够用了,按“Next”继续。如图 1.8。

(11)是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库了,我们这里启用,把前面的勾打上,Port Number:3306,在这个页面上,您还可以选择“启用标准模式”(Enable Strict Mode),这样MySQL就不会允许细小的语法错误。如果您还是个新手,我建议您取消标准模式以减少麻烦。但熟悉MySQL以后,尽量使用标准模式,因为它可以降低有害数据进入数据库的可能性。按“Next”继续。如图1.9。

图 1.8 数据库连接数量

图1.9 选择端口号

(12)选择字符集。这个比较重要,就是对mysql默认数据库语言编码进行设置,第一个是西文编码,第二个是多字节的通用utf8编码,都不是我们通用的编码,这里选择第三个,然后在Character Set那里选择或填入“gbk”,当然也可以用“gb2312”,区别就是gbk的字库容量大,包括了gb2312的所有汉字,并且加上了繁体字、和其它乱七八糟的字——使用mysql的时候,在执行数据操作命令之前运行一次“SET NAMES GBK;”(运行一次就行了,GBK可以替换为其它值,视这里的设置而定),就可以正常的使用汉字(或其它文字)了,否则不能正常显示汉字。按 “Next”继续。如图1.10。

图1.10 选择字符集

图 1.11 安装MySQL服务

(13)选择是否将mysql安装为windows服务,还可以指定Service Name(服务标识名称),是否将mysql的bin目录加入到Windows PATH(加入后,就可以直接使用bin下的文件,而不用指出目录名,比如连接,“mysql.exe -uusername -ppassword;”就可以了,不用指出mysql.exe的完整地址,很方便),这里全部打上了勾,Service Name不变。按“Next”继续。图 1.11。

(14)这一步询问是否要修改默认root用户(超级管理)的密码(默认为空),“New root password”如果要修改,就在此填入新密码(如果是重装,并且之前已经设置了密码,在这里更改密码可能会出错,请留空,并将“Modify Security Settings”前面的勾去掉,安装配置完成后另行修改密码),“Confirm(再输一遍)”内再填一次,防止输错。“Enable root access from remote machines(是否允许root用户在其它的机器上登陆,如果要安全,就不要勾上,如果要方便,就勾上它)”。最后“Create An Anonymous Account(新建一个匿名用户,匿名用户可以连接数据库,不能操作数据,包括查询)”,一般就不用勾了,设置完毕,按“Next”继续。如图1.12。

图1.12 创建root用户

接下来就是等待配置结束了。

配置结束后,如果想更改配置,可以到安装目录中编辑my.ini文件,修改相应条目来修改配置。

1.3.2 配置MySQL

在上面的MSI安装的过程中,已经进行了可以使用的配置。但是如果采用手动安装模式,或想修改MySQL的配置,则需要了解MySQL的my.ini文件中的相关条目。my.ini文件在安装目录下。我们现在需要关注的是my.ini文件中的mysqld小节(即在my.ini文件标注为[mysqld]的地方)中几个条目。

(1)       port = 3306

表示MySQL监听3306端口,3306是MySQL的默认端口,如果有需要,可以修改这个端口。

(2)       basedir="安装目录"。

表明安装目录的位置。

如果安装目录为“C:/Program Files/MySQL/MySQL Server 5.1/”,则内容相应内容为:

basedir=" C:/Program Files/MySQL/MySQL Server 5.1/"

注意目录间隔使用“/”而不是“/”,如果要使用“/”,则要修改成“//”,如下:

basedir=" C://Program Files//MySQL//MySQL Server 5.1//"

(3)       datadir="数据文件的目录 "

指明数据文件的目录,假如数据文件放在D:/data下,则:

datadir="D:/data/ "

(4)       default-character-set=字符集

指明数据库采用何种字符对数据进行编码。一般情况下可以utf-8,在使用中文的情况下也可使用gbk。如:

default-character-set=gbk

(5)       default-storage-engine=数据库引擎

指定默认的数据库引擎。在Linux下,默认的引擎为MyISAM,而在Windows下默认引擎为INNODB。他们的主要区别在于MyISAM不支持外键与事务但执行速度快,INNODB支持外键与事务但执行效率稍差。至于选用哪种引擎,要看具体应用而定。如:

default-storage-engine=MyISAM

(6)       innodb_data_home_dir=innodb数据文件位置。

如果才用innobd引擎,则可以使用这一条目指定innodb数据文件的位置。假设innodb数据文件的位置在D:/InnoDB_Data,则

innodb_data_home_dir="D:/ InnoDB_Data /"

还有其他许多调整数据库性能的条目如cache的大小,最大数据库连接数等等。这些参数的调整对于DBA来说比较重要,而对于我们刚接触MySQL的人或程序开发者人来说,并不是必须的。

1.3.3 MySQL客户端PhpMyAdmin

phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具。安装该工具后,即可以通过 web 形式直接管理 MySQL 数据,而不需要通过执行系统命令来管理,非常适合对数据库操作命令不熟悉的数据库管理者。PhpMyAdmin已经有十年的历史,它非常稳定,也易于扩展。 而且每年都赢得SourceForge.net社区的最佳系统管理工具奖。我们可以到http://www.phpmyadmin.net/home_page/index.php上去下载PhpMyAdmin。

作为非英语地区的人,在下载时,我们要选择多语种语言包(PhpMyAdmin声称支持58种语言,当然也支持简体中文),在Windows下为解压方便也选择zip压缩包,如phpMyAdmin-3.3.1-all-languages.zip。

下载后解压到1.2.3节中配置的doc_root指定的目录下。接下就该配置PhpMyAdmin了。

打开 libraries 目录下的 config.default.php 文件,依次找到下面各项,按照说明配置即可。

1、访问网址

$cfg['PmaAbsoluteUri'] = ' ';      //这里填写 phpMyAdmin 的访问网址。

2、MySQL 主机信息

$cfg['Servers'][$i]['host'] = 'localhost';   // MySQL主机名或IP地址

填写 localhost  或 MySQL  所在服务器的 ip 地址,如果 MySQL 和该 phpMyAdmin 在同一服务器,则按默认 localhost

$cfg['Servers'][$i]['port'] = ' '; // MySQL 端口 – 默认端口可以留空

MySQL 端口,默认为 3306,保留为空即可,如果您安装 MySQL 时使用了其它的端口,需要在这里填写。

3、MySQL 用户名和密码

$cfg['Servers'][$i]['user'] = 'root'; // 填写 MySQL访问 phpMyAdmin 使用的 MySQL 用户名,默认为 root。

$c fg['Servers'][$i]['password'] = ''; // 填写对应上述 MySQL 用户名的密码。

4、认证方法

$cfg['Servers'][$i]['auth_type'] = 'cookie'; //考虑到安全的因素,建议这里填写 cookie

在此有四种模式可供选择,cookie,http,HTTP,config

config 方式即输入 phpMyAdmin 的访问网址即可直接进入,无需输入用户名和密码,是不安全的,不推荐使用。

当该项设置为 cookie,http 或 HTTP 时,登录 phpMyAdmin 需要数据用户名和密码进行验证,具体如下:

PHP 安装模式为 Apache,可以使用 http 和 cookie;

PHP 安装模式为 CGI,可以使用 cookie。

5、短语密码(blowfish_secret)的设置

$cfg['blowfish_secret'] = '';

如果认证方法设置为 cookie,就需要设置短语密码,设置为什么密码,由您自己决定,这里不能留空,否则会在登录 phpMyAdmin 时提示错误。

当使用 'HTTP' 和 'cookie' 认证时,phpMyAdmin 需要一个在 `mysql`.`user` (除 `Password` 之外的所有字段)、`mysql`.`db` (所有字段)、`mysql`.`host` (所有字段) 和 `mysql`.`tables_priv` (除 `Grantor` 和 `Timestamp` 之外的所有字段) 数据表中仅具有 SELECT 权限的控制用户。

你必须在 config.inc.php 中的 $cfg['Servers'][$i]['controluser'] 和 $cfg['Servers'][$i]['controlpass'] 设置中设置好控制用户。

下例演示了如何使用 pma 作为控制用户以及 pmapass 作为控制用户的密码,需要注意的是: 这仅仅是个示范,请在你的配置文件中使用不同的用户名和密码!在 phpMyAdmin SQL 查询窗口或 MySQL 命令行客户端中输入下列命令。

如果网站服务器和 MySQL 服务器并不在同一台服务器上,你要将 localhost 换成正确的地址。

GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';

GRANT SELECT (

Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,

Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,

File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,

Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,

Execute_priv, Repl_slave_priv, Repl_client_priv

) ON mysql.user TO 'pma'@'localhost';

GRANT SELECT ON mysql.db TO 'pma'@'localhost';

GRANT SELECT ON mysql.host TO 'pma'@'localhost';

GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)

ON mysql.tables_priv TO 'pma'@'localhost';

如果你想使用书签以及相关的新功能,还要执行:

GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';

上面的<pma_db>数据库的创建,你可以使用setup目录下的Create.sql,此脚本文件帮助你创建书签有关的数据库。当然想使用书签功能,还需要在配置文件中配置与<pma_db>数据有关的内容。

上述配置是PhpMyAdmin的基本配置,这些信息对于初学者已经足够。如需要更详细的信息可以参考PhpMyAdmin的中文翻译文档,网址是:http://www.phpmyadmin.net/localized_docs/zh_CN/Documentation.html。

配置完成后,将此文件重命名为config.inc.php,复制到PhpMyAdmin的安装目录下即可。接下来您就可以在浏览器里输入:http://localhost:88/phpmyadmin/,看看是否有登陆界面出现。

PHP开发环境配置:安装与配置Apache、PHP、MySQL、PhpMyAdmin相关推荐

  1. win7下python的安装与配置_Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程...

    以此文记录Python与Tensorflow及其开发环境的安装与配置过程,以备以后参考. 1 硬件与系统条件 Win7 64位系统,显卡为NVIDIA GeforeGT 635M 2 安装策略 a.由 ...

  2. STM32集成开发环境 STM32CubeIDE 安装与配置指南

    STM32集成开发环境 STM32CubeIDE 安装与配置指南 Start With STM32CubeIDE 前言 一.IDE下载 源文件下载 安装步骤 二.界面汉化 牵引信标 开始跃迁 三.主题 ...

  3. 从零开始安装搭建win10与ubuntu20.04双系统开发环境——集安装、配置、软件、美化、常见问题等于一体的——超详细教程

    文章目录 **前言 ** 关于系统安装配置与软件安装 一.Win10安装ubuntu20.04双系统 1.按照自己的需求分区 2.配置软件镜像源 软件包管理工具介绍 更换APT源--使用国内镜像 3. ...

  4. 从unity到unreal4 虚幻4学习笔记 一 : ue4与vs studio、vs code开发环境的安装与配置

    前言 学习ue4的理由 我是个资深unity玩家,自认为可以使用unity做任何事.对虚幻的仰慕纯属技术信仰,懂的都懂不多解释.我并不打算放弃unity,正所谓艺多不压身,多储备点技术栈也没坏处. u ...

  5. 教你10分钟内在Windows上完成Rails开发环境的安装和配置

    原文:http://www.cnblogs.com/tambor/archive/2011/12/25/rails_anzhuang_railsinstaller.html 一般来说,Windows开 ...

  6. Tuxedo 8.110gR3 开发环境的安装与配置

    Bea Tuxedo是在企业.Internet 这样的分布式运算环境中开发和管理三层结构的C/S型应用系统的一种中间件系统.除了正在使用中的Bea Tuxedo 8.1版本之外,随着Bea被Oracl ...

  7. 第2章 开锋你的绝世名刃—— Visual Studio 开发环境的安装、配置

    2.1 Visual Studio .VC ++和C ++的那些事儿 Visual Studio 是一套工具集, VC ( Visual c++)只是这套工具集中的一个工具,而c++大家都知道是一种风 ...

  8. 第二章 Visual Studio开发环境的安装、配置

    ● 1. Visual Studio 其实是微软开发的一套工具集,它由各种各样得工具组成,这样就好像 Wps Office软件是由 WPS文字.WPS表格.WPS演示 等等组成是一个道理, 其中Vis ...

  9. python开发环境的安装与配置_Python开发环境的安装配置

    要学习Python,我们首先要安装配置好Python的运行环境. 那么安装Python 2 还是 Python 3 呢? 当然是要选择Python 3 .这里来教大家安装稳定版Python3 的版本是 ...

  10. gnu java_GNU/Linux下Java开发环境的安装和配置

    首先下载JDK,在这里下载最新版本的JDK,选择平台为linux,就会得到一个二进制文件,我得到的是jdk-6u23-linux-i586.bin,复制到需要安装的地方运行就会自动解压缩并安装. 比如 ...

最新文章

  1. 英伟达联手Arm CPU打造AI超算,百万兆级性能,主攻气候变化和核武建模
  2. 【最全最详细】publiccms实现将公共部分提取成单独模块引入
  3. myeclipse连接mysql怎么调用_myeclipse连接mysql数据库详细步骤
  4. mysql参数配置调优详解配置(1)
  5. Java 条件运算符?:
  6. VirtualBox 删掉虚拟镜像重新安装失败
  7. QT与VS环境下代码文件编码格式使用utf-8与带BOM的utf-8的差异
  8. typescript类与继承
  9. python 线程-threding示例使用
  10. java iqq_Linux开源QQ 2012(iQQ)
  11. Length of Last Word
  12. java非法表达式开头,java - 我不断收到“ Battle.java:11:错误:表达式的非法开头” Heelp - SO中文参考 - www.soinside.com...
  13. linux远程映射usb设备,Linux 系统下USB端口映射
  14. 【DBAI】《基于机器学习的数据库技术综述》
  15. 汽车Vin码识别/手机端扫描识别汽车车架号SDK
  16. 计算机考研基本信息,复旦大学计算机考研基本信息
  17. 拉里·埃里森亲自支招,数据库自动化之后,DBA何去何从???
  18. 把 GPL 视作“病毒”?请停止污名化 GPL
  19. 专利申请的费用和提交材料
  20. 【词目】:勿谓言之不预也

热门文章

  1. 一个很棒的Flutter学习资源列表
  2. php页面get方法实现ajax,入门实例教程
  3. 2015.05.15,外语,学习笔记-《Word Power Made Easy》 01 “如何讨论人格特点”
  4. leetcode - Balanced Binary Tree
  5. mybatis配置文件形式
  6. 20145233《网络对抗》Exp8 Web基础
  7. H5——while循环,for循环
  8. (转)标准I/O缓冲:全缓冲、行缓冲、无缓冲 .
  9. PHP100视频教程2012版解压密码
  10. HDU 3934 Summer holiday(凸包内接最大三角形)