解决phpmyadmin中缺少mysqli扩展问题的方法

phpMyAdmin错误 缺少 mysqli 扩展。请检查 PHP 配置 的解决方案

phpMyAdmin 缺少 mysqli 扩展。请检查 PHP 配置 的解决方案:
缺少 mysqli 扩展。请检查 PHP 配置。

打开你的php.ini->一般在C:WINDOWS目录下。
找到

代码如下:

;extension=php_msql.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll

需要开启哪个扩展,就把这一行前面的分号去掉就行,注意要重启Apache 或者IIS

解决步骤:
1.看看php的ext目录中是否有php_mysqli.dll文件
如果有,继续下面的步骤。没有的话重新装个php
2.打开php.ini,找到

代码如下:

;extension=php_mysqli.dll

把前面的分号";"去掉,改为

代码如下:

extension=php_mysqli.dll

3.找到

代码如下:

;extension_dir="./ext"

把前面的分号";"去掉,改为(相对于php的安装路径的ext目录)

代码如下:

extension_dir = "e:\php\ext"

e:php为php的存放目录

4.把php.ini拷贝到c:windows下
5.把libmysql.dll复制到Windows下面的System32目录(这个很关键)
6.重新启动IIS(不是网站)

cmd下运行 iisreset /RESTART

如果上面方法还不行,可参考下面方法操作

第一步,输出 phpinfo() 看看 MySQL 模块是否成功装载,如果成功装载说明你见鬼了,否则看第二步,

IIS下phpinfo()无mysql模块是何原因?
原先用的php是.msi安装的,后来全部重来了一次,换成压缩包形式安装的。
又照着配置了php.ini,复制到windows,复制libmysql.dll到system32。
之后测试成功。。。
第二步,查看 extension_dir 的设置是否正确
第三步,查看是否把 libmysql.dll 文件复制到 c:windowssystem32 下

1、没有正确安装Mysql数据库,在系统服务中Mysql相关的服务没有启动   (请查看正确安装Mysql的方法)

2、在系统的 system32(C:windowssystem32) 目录下缺少 libmysql.dll文件,解决方法是找到php目录下的libmysql.dll,并将libmysql.dll复制到C:windowssystem32目录中,然后重新启动Web服务。

3、在C:windows目录下的php.ini文件中,没有将“;extension=php_mysql.dll”中的前面一个“;”去掉,所以不能使用相应功能,解决方法是打开php.ini文件

4、Mysql目录没有读取权限,正确的目录权限如下:
administrator   完全控制
system    完全控制
user    读取加运行
其他的用户权限全部删除(也可保留,但安全性不高,建议删除),然后重启MYsql服务和Web服务。

当你打开phpmyadmin时可能会报这样的一个错误,

缺少 mysqli 扩展。请检查 PHP 配置。 <a href="Documentation.html#faqmysql" target="documentation"><img class="icon" src="./themes/original/img/b_help.png" width="11" height="11" alt="文档" title="文档" /></a>

你可以按照以下这几种方法进行检查:

1.检查php.ini ;extension=php_mysqli.dll是不是已经启用 也就是去掉前面的;

2.检查php.ini extension_dir 地址是不是指向了php目录的ext目录下这步是关键 我就是处在这一步的问题上 我把 extension_dir = "e:\www\php54\ext" 设置成了自己的目录 就可以了

3.检查lib_mysql.dll有没有拷贝到windows目录下  这个dll文件有多种形式的 有没加下划线的libmysql_d.dll 因此要注意自己看

4.检查php安装目录ext目录下,php_mysqli.dll文件是不是存在 网上也说明 最好使用zip包解压 不会出现文件丢失

5.查看php详细页面<?php phpinfo(); ?>,看看mysql和mysqli是不是已经启动这一步就是检查你有没有开启mysqli的
没有开启的话 你查找mysqli关键字是无法再php详细页面看到的

最后要注意!!!!重启Apache

补充:

搞了整整一天了还是没有搞好,网上看了很多解决办法都没有用。

首先我绝对保证:

1:我绝对已经把 php.ini 中的;extension_dir = "C:/myenv/php-5.3.5/ext"分号去掉了,
也写上了路径。这点排除

2:我保证已经启用mysql功能,在php.ini中去extension=php_mysql.dll

extension=php_mysqli.dll 前面的分号了这点排除

3:php中ext文件中绝对有php_mysqli.dll 和php_mysql.dll 这点排除

4:php和apache 整合是可行的 phpinfo()可以显示,但是找不到mysql这些块。
只有mysqlnd选项在,而且Configuration File (php.ini) Path C:\WINDOWS 这点排除

5:接上面的我想到了改系统变量,就是网上有些人说的吧php.ini,**.dll复制
到 windows下或者syetem32下面去。可是没有用 这点也排除

6.是在没办法重新安装,卸载很多次。问题无法解决,在dos下可以启动mysql

高分求解决方案,上面方法就不要提出了,都没有用。大侠帮我分析分析。解决了再给50分!
phpadmin版本也换过的。还是不行。

终于解决了。如果各位碰到这种情况,并且上面方法都没有用。那么可以试试下面的方法。

1 、把 ../mysql/bin/libmySQL.dll 拷贝到 php5.0 下面,还有拷贝到 php5.0/ext 目录下
2、将 libmySQL.dll php5ts.dll 两个文件拷贝到 windows/system32 下
3、将 php5.0 根目录下面的 php.ini拷贝到 windows目录下,(前提是php.ini必须是配置好的)
4、此时如果没有什么问题就可以连接数据库进行测试啦 其实这个问题关键的一步是 libmySQL.dll 这个文件,它不是原php5.0下面自带的那个,而是 mysql 文件里带的libmySQL.dll

(0)

相关推荐

  • PHP以mysqli方式连接类完整代码实例

    本文所述的是一个在PHP中以mysqli方式连接数据库的一个数据库类实例,该数据库类是从一个PHP的CMS中整理出来的,可实现PHP连接数据库类,MySQLi版,兼容PHP4,对于有针对性需要的朋友可根据此代码进行优化和修改. <?php #================================================================================================== # Filename: /db/db_mysqli.php

  • PHP mysql与mysqli事务使用说明 分享

    mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法. 应用比较多的地方是 mysqli的事务. 比如下面的示例: 复制代码 代码如下: $mysqli = new mysqli('localhost','root','','DB_Lib2Test');$mysqli->autocommit(false);//开始事物$mysqli->query($sql1);$mysqli->query($sql2);if(!$mysqli->errno){  $m

  • PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\

    今天在家启动PHP环境的时候,突然发现不能加载php_mysqli.dll了,网上找了一圈,没有解决方案! 在群里面受一哥们儿的启发,竟然解决了,如果你的问题还没有解决,请按下面的方法试试! apache下比如我的apache装在D盘,目录是D:/severs/apache PHP的目录是D:/servers/php5 这样,把D:/servers/php5/libmysql.dll拷贝到D:/servers/apache/bin这个目录下面 重启apache,问题迎刃而解!~~ iis下:将p

  • 如何判断php mysqli扩展类是否开启

    如何判断php mysqli扩展类是否开启 php判断mysqli扩展类是否开启,源码如下: <?php /* by http://www.manongjc.com/article/1206.html */ function mysqlinstalled (){ if (function_exists ("mysql_connect")){ return true; } else { return false; } } function mysqliinstalled (){ i

  • PHP数据库操作之基于Mysqli的数据库操作类库

    此类库简单.易用,便于你自己修改和对功能的改善,能解决大部分 PHP 项目中执行的 SQL 操作. 初步工作 首先,请大家下载这个类库 M.class.php 再下载一个 Mysqli 连接数据库的类库 MysqliDb.class.php(打包下载地址)  新建一个 includes 的文件夹,将下载下来的两个 class 文件,放进去. 然后,请你在项目下创建一个 test.php 文件.注:UTF-8 文件格式 请先根据你机器的情况,填充以下代码,用于连接数据库: 复制代码 代码如下: h

  • php中关于mysqli和mysql区别的一些知识点分析

    一: PHP-MySQL 是 PHP 操作 MySQL 资料库最原始的 Extension ,PHP-MySQLi 的 i 代表 Improvement ,提更了相对进阶的功能,就 Extension 而言,本身也增加了安全性.而 PDO (PHP Data Object) 则是提供了一个 Abstraction Layer 来操作资料库,用讲的其实看不出来有有什麽差别,所以就直接看程式吧- 首先,先来看一段用 PHP-MySQL 写成的程式码,这类的范例常用在世界各地: 复制代码 代码如下:

  • php开启mysqli扩展之后如何连接数据库

    Mysqli是php5之后才有的功能,没有开启扩展的朋友可以打开您的php.ini的配置文件. 查找下面的语句:;extension=php_mysqli.dll将其修改为:extension=php_mysqli.dll即可. 相对于mysql有很多新的特性和优势 (1)支持本地绑定.准备(prepare)等语法 (2)执行sql语句的错误代码 (3)同时执行多个sql (4)另外提供了面向对象的调用接口的方法. 下面一一用php实例进行mysqli数据库连接! 使用方法一:使用传统的面向过程

  • php中数据库连接方式pdo和mysqli对比分析

    1)总的比较   PDO MySQLi 数据库支持 12种不同的数据库支持 支持MySQL API OOP OOP + 过程 Connection Easy Easy 命名参数 支持 不支持 对象映射支持 支持 支持 预处理语句  (客户端) 支持 不支持 性能 快 快 支持存储过程 支持 支持 2 连接方式 先来看下两者连接数据库的方式: 复制代码 代码如下: // PDO $pdo = new PDO("mysql:host=localhost;dbname=database",

  • php操作mysqli(示例代码)

    <?php define("MYSQL_OPEN_LOGS",true); class mysqliHelp { private $db; public function __construct()    {     //如果要查询日志log的话,怎么办 } public function __get($name )     {       //echo "__GET:",$name;       if(in_array($name,array("d

  • PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别

    虽然nosql变得流行,但是我感觉sql还是主流 今天在翻php manul的时候,发现mysqli 的查询可以传递一个有意思的参数 复制代码 代码如下: @mysqli_query($this->sql,$SQL,($method ? MYSQLI_USE_RESULT : MYSQLI_STORE_RESULT)); 在php manul上面对这两个参数是这样解释的. 复制代码 代码如下: Either the constant MYSQLI_USE_RESULT or MYSQLI_STO

  • PHP5 mysqli的prepare准备语句使用说明

    mysqli对prepare的支持对于大访问量的网站是很有好处的,它极大地降低了系统开销,而且保证了创建查询的稳定性和安全性.prepare准备语句分为绑定参数和绑定结果,下面将会一一介绍! (1)绑定参数 看下面php代码: 复制代码 代码如下: <?php //创建连接 $mysqli=new mysqli("localhost","root","","volunteer"); //检查连接是否被创建 if (mys

  • PHP中mysqli_affected_rows作用行数返回值分析

    本文实例分析了PHP中mysqli_affected_rows作用行数返回值.分享给大家供大家参考.具体分析如下: mysqli中关于update操作影响的行数可以有两种返回形式: 1. 返回匹配的行数 2. 返回影响的行数 默认情况下mysqli_affected_rows返回的值为影响的行数,如果我们需要返回匹配的行数,可以使用mysqli_real_connect函数进行数据库连接的初始化,并在函数的flag参数位加上: MYSQLI_CLIENT_FOUND_ROWS return nu

随机推荐