php5.3.1+mysql5.1.40 on windows7
周末又把家里的台式机折腾了一下,给老婆装上了界面更加绚丽的 windows 7,呵呵。win 7 的运行也是相当流畅,界面也是非常绚丽,感觉很好,个人用户推荐尝试呵呵。
不过安装上 win7 之后也不能只让老婆用啊,所以我一如既往的安装了一些常用的软件,比如 photoshop,editplus 之类,当然不能少的就是给电脑配置成为一个 webserver 可以用来调试程序,和 XP 一样,我选择安装了 apache2.2.14,php 则用了最新的 5.3.1 版本,mysql 用了 5.1.40 版本,apache 正常安装运行正常,而 php5.3.1 也是正常解压缩,配置 php.ini,mysql 的安装出现了一点问题,记得以往 mysql 的安装我都是解压之后,在命令行下,直接 mysqld-nt --install 搞定的,在 win7 下命令行的运行要以管理员身份运行。这是第一点差别,另外一个就是,不能直接 --install 了,需要加上一些参数,不然 mysql 服务的启动会不正常。参数是这样的:
mysqld --install MySQL --defaults-file=e:\mysql\my.ini
其中 mysqld 是安装服务的可执行文件,MySQL 是服务名称,而--defaults-file 则是指定配置文件的位置,类似 linux 下编译软件时用到的 --conf-path。我发现在 win7 下,如果不加上这个参数,则 MySQL 服务会自动寻找 my.cnf 文件作为参数,以至于服务无法正常启动。
其次,在使用 phpmyadmin 来管理 mysql 数据库的时候,会发生未知错误,很长时间不能连接数据库,即便是使用 setup 来配置 phpmyadmin 的时候也无法正常加载。但奇怪的是,用 Mysqladministrator GUI tools 则可以连接到。所以写了一个 php 文件,内容是这样的:
<?php
$link=mysql_connect("localhost","root","");
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
运行这个php文件,出现如下错误:
Warning: mysql_connect() [function.mysql-connect]: [2002] A connection attempt failed because the connected party did not (trying to connect via tcp://localhost:3306) in E:\apache\www\mysql.php on line 2 Warning: mysql_connect() [function.mysql-connect]: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in E:\apache\www\mysql.php on line 2
Fatal error: Maximum execution time of 60 seconds exceeded in E:\apache\www\mysql.php on line 2
首先怀疑是不是3306端口被占用了,但 Mysqladministrator GUI tools 可以管理 mysql 数据库,所以应该不是端口的问题,然后怀疑是不是 localhost 的问题,结果在 C:\Windows\System32\drivers\etc 发现 localhost 默认是没有被定义的,#127.0.0.1 localhost 处于被注释掉了的状态,所以将 # 去掉,再次运行,OK!一切正常,phpmyadmin 可以正常使用了。

当前暂无评论 »