php oracle 需要libmysql.dll么_,Windows7环境下Apache+PHP+MySQL完美配置

写作此篇文章的目的在于记录Windows 7环境下成功配置WAMP环境, 初学者在不使用整合好的WAMPServer和XAMPP的情况下徒手配置整合环境貌似有很多意想不到的问题. 这将是我们需要讨论的.

我将重现几个经典的问题, 并一一排除. 希望对各位看官有点借鉴作用.

一. Apache在整合PHP后无法启动的问题

并弹出如下Error提示框, "The requested operation has failed!"

据我的经验, 产生这个错误有如下2个原因:

1. PHP版本下载的版本不对

解决方法:

(1). 点击 重新下载对应的PHP版本. 此时可以重点阅读一下该网页位于右侧的Which version do I choose?根据这个提示, 我们发现搭配Apache使用, 我们应该下载使用VC6编译的PHP Binary文件(VC9编译的是给IIS用的). 其命名格式如下: VC6 x86 Non Thread Safe (2011-Mar-22 13:28:39).

(2). 注意: 即使是使用同一版本的编译器编译的PHP 可执行二进制代码也有Non Thread Safe和Thread Safe之分(翻译为非线程安全和线程安全).  一般在Apache环境下是搭配Thread Safe版本的PHP使用. 如果你使用Non Thread Safe的PHP版本, Apache也会无法成功启动.

可以使用命令行执行httpd.exe命令查看Apache报告的错误信息, 如下图:

2. Apache配置文件httpd.conf没有配置正确

在httpd.conf文件中必须首先加入如下的PHP模块加载语句:

#################################

# PHP Config

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

AddHandler application/x-httpd-php .php

# configure the path to php.ini

PHPIniDir "d:/php"

################################

请注意配置了以上选项. 以上路径根据个人的安装路径不同而不同. 请注意更改.

解决方法:

一般出错的配置项是LoadModule php5_module "d:/php/php5apache2_2.dll"有时候是特定的dll对应的Apache版本不对, 如在Apache2.2版本下却配成了LoadModule php5_module "d:/php/php5apache2.dll", 此时只需将该配置项改为LoadModule php5_module "d:/php/php5apache2_2.dll"即可.

经过以上的检查, 应该可以使用phpinfo()输出PHP配置信息了.

二. PHP无法成功连接MySQL数据库

这个问题的突出表现为当调用mysql_connect()函数时, 会报一个致命错误, 显示此方法未定义. 错误信息如下:

Fatal error: Call to undefined function mysql_connect() in D:Apache2.2htdocsindex.php on line 4

我相信各位在看到这一句的时候, 已经翻看了许多解决方法, 移动复制libmysql.dll和php5ts.dll甚至还有php.ini文件到其他某某目录(上述的3个文件的前2个在PHP安装包中都有自带), 这些其实都是PHP官方不推荐的方法. 而且十分繁琐.

大家只需在PATH中添加一条记录即可, 即在PATH后追加php安装目录的根目录便可, 如我的PHP安装在D:php目录下, 于是就可以在PATH后追加D:php即可. 然后不要忘记在php.ini打开extension=php_mysql.dll选项.

特别注意: 在更改PATH后请通过Monitor Apache Servers界面Stop一下正在运行的Apache服务器, 然后需要Exit, 然后重新启动Monitor Apache Servers界面StartApache服务器. 单单的restart是没有效果的.

1. 关于libmysql.dll文件

这个文件是php默认自带的, 就位于php根目录下. 容易和MySQL自带的同名文件弄混, 在PHP中请使用php自带的那个. 不要自作聪明跑到MySQL安装目录的lib中拷贝libmysql.dll文件, 这个文件一般不能和php配合工作. 它们是不一样的.

2. 关于php5ts.dll文件

这个文件就位于PHP安装文件夹的主目录下.

3. 关于整合MySQL在php.ini中配置的一些注意事项

(1). extension_dir项请配置正确, 可以使用相对路径和绝对路径的形式. 在Windows环境下一般使用""分隔目录, 当然如果使用"/"也没有问题.

(2). 具体的MySQL的extension项务必不要忘记打开

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/541345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stringreader_Java StringReader skip()方法与示例

stringreaderStringReader类skip()方法 (StringReader Class skip() method) skip() method is available in java.io package. skip()方法在java.io包中可用。 skip() method is used to skip the given number of characters in the stream. skip()方法用于跳过流中给定数量的…

NFS部署及优化(一)

NFS部署及优化(一)一、NFS的基本概念NFS network file system 网络文件系统必然通过网络通信来实现文件的访问和写入,所以做这个实验的话最好有两台虚拟机配置:A:一个192.169.50.201为server端B:一个192.169.50.200为…

oracle 11g跳过坏块,oracle 使用Dbms_Repair跳过坏块

原博文:http://blog.chinaunix.net/uid-77311-id-3051382.html使用Dbms_Repair跳过坏块步骤1:表tb_test中有坏块(模拟坏块同方法1)SQL> select count(1) from hxl.tb_test;select count(1) from hxl.tb_test*ERROR at line 1:ORA-01578: ORACLE data block corru…

strictmath_Java StrictMath nextUp()方法与示例

strictmathStrictMath类nextUp()方法 (StrictMath Class nextUp() method) Syntax: 句法: public static float nextUp(float fl);public static double nextUp(double do);nextUp() method is available in java.lang package. nextUp()方法在java.lang包中可用。…

并发数据结构-1.1 并发的数据结构的设计

原文链接,译文链接,译者:董明鑫,校对:周可人 随着多个处理器共享同一内存的机器在商业上的广泛使用,并发编程的艺术也产生了巨大的变化。当前的趋势向着低功耗芯片级多线程(CMT)发展…

printstream_Java PrintStream close()方法与示例

printstreamPrintStream类close()方法 (PrintStream Class close() method) close() method is available in java.io package. close()方法在java.io包中可用。 close() method is used to close the underlying output stream. close()方法用于关闭基础输出流。 close() meth…

oracle底层执行顺序,select语句结构与执行顺序-Oracle

select语句结构与执行顺序select语句的结构与执行顺序,下面的序号代表执行顺序8 SELECT (9)DISTINCT11 1 ROM 3   JOIN 2   ON 4 WHERE 5 GROUP BY 6 WITH {CUBE | ROLLUP}7 HAVING 10 ORDER BY 补…

HDU 4923 Room and Moor(瞎搞题)

瞎搞题啊。找出1 1 0 0这样的序列,然后存起来,这样的情况下最好的选择是1的个数除以这段的总和。然后从前向后扫一遍。变扫边进行合并。每次合并。合并的是他的前驱。这样到最后从t-1找出的那条链就是最后满足条件的数的大小。Room and Moor Time Limit:…

java define_Java Long类的define()方法与示例

java define长类解码()方法 (Long class decode() method) decode() method is available in java.lang package. 在java.lang包中提供了define ()方法 。 decode() method is used to decode the given String value into a Long value. encode()方法用于将给定的String值解码…

linux修改文件用户组,linux命令 修改文件、文件夹所属用户、用户组

最近学习hadoop,在替换配置文件的时候,发现老是报错,没有权限替换。我们知道如何改变文件的用户组与拥有者了,那么,什么时候要使用chown或chgrp呢?或许你会觉得奇怪吧?是的,确实有时…

Kotlin 开篇

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发官网地址:http://kotlinlang.org。JetBrains,作为目前广受欢迎的 Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。开源地址:https:/…

inputstream示例_Java InputStream close()方法与示例

inputstream示例InputStream类close()方法 (InputStream Class close() method) close() method is available in java.io package. close()方法在java.io包中可用。 close() method is used to close this InputStream and free all system resources linked with this stream…

linux下的文件系统,Linux根文件系统(“/”文件系统)下的目录介绍

Linux下的文件存储与Windows完全不同,Windows将系统文件存储在系统盘(比如说C:\下)Linux根本没有盘符到概念只有一个根文件系/,各个磁盘分区挂载在/media/下(或者/mnt/下)/下到如/etc,/proc,/bin,/dev,lib等很是让用惯了Windows的用户不解,下…

greenlet 详解

greenlet初体验回到顶部Greenlet是python的一个C扩展,来源于Stackless python,旨在提供可自行调度的‘微线程’, 即协程。generator实现的协程在yield value时只能将value返回给调用者(caller)。 而在greenlet中,target.switch&am…

Java Calendar toString()方法与示例

日历类toString()方法 (Calendar Class toString() method) toString() method is available in java.util package. toString()方法在java.util包中可用。 toString() method is used to string denotations of the calendar object. toString()方法用于对日历对象的符号进行字…

linux虚拟机怎么看var文件,一种获取Linux虚拟机内部日志的方法

一种获取Linux虚拟机内部日志的方法【技术领域】[0001]本发明涉及云计算管理技术领域,特别是指一种获取Linux虚拟机内部日志的方法。【背景技术】[0002]在云计算环境下,虚拟机被广泛使用,对于虚拟机的维护要求越来越高,当虚拟机出…

详细图解mongodb 3.4.1 win7x64安装

原文:http://www.cnblogs.com/yucongblog/p/6895983.html 详细图解,记录 win7 64 安装mongo数据库的过程。安装的版本是 MongoDB-win32-x86_64-2008plus-ssl-3.4.1-signed。 我下载的源文件:mongodb-win32-x86_64-2008plus-ssl-3.4.1-signed我…

java calendar_Java Calendar complete()方法与示例

java calendarCalendar类的complete()方法 (Calendar Class complete() method) complete() method is available in java.util package. complete()方法在java.util包中可用。 complete() method is used to fills in any non-set fields in the calendar fields. complete()方…

LXD 2.0 系列(十二):调试,及给 LXD 做贡献

介绍 终于要结束了!这个大约一年前开始的这系列文章的最后一篇博文。 LXD 入门安装与配置你的第一个 LXD 容器资源控制镜像管理远程主机及容器迁移LXD 中的 DockerLXD 中的 LXD实时迁移LXD 和 JujuLXD 和 OpenStack调试,及给 LXD 做贡献如果你从一开始就…

linux用ping命令测试网速,linux下面使用命令测试网速

大家都知道在speedtest是市面上最准确最全面的测速工具,但在linux命令行不能直接使用,所以我们就借助脚本调用speedtest的接口来利用他测试网速。1.下载speedtest-cli脚本:下载地址:https://raw.githubusercontent.com/sivel/spee…