本文章总结了在php开发中可能会常常碰到的一些php连接不了mysql数据库的一些问题总结与解决方法分享,有需要的朋友可参考一下。

问题一

今天给本本装上mysql和php,一切安装都很正常(php@IIS7.5-fastCGI)。但用phpmyadmin连接测试时却出现“#2002无法连接”的错误,用其它程序也是同样问题。
检查了下,php的mysql扩展正确安装,mysql服务正常启动--那就奇了怪了。又用navicat连接,居然连上了。。看来是php和mysql间的通讯出了问题。
百度了一下,问题被揪出来了:
mysql_connect()函数数据库服务器(server)参数当前设置为localhost,但当其更改为127.0.0.1后又可以正常访问。
系统hosts文件未提供127.0.0.1到localhost的解析。

解决方法(以win7系统为例):找到C:\Windows\System32\drivers\etc\hosts文件,默认为只读,你需要复制一份到其他路径如桌面,打开文件(打开方式:记事本),在文件末尾添加:

127.0.0.1 localhost

如果已存在去掉其前面的“#”。

问题二

php脚本可以正常运行,如phpinfo()。

只要一出现“mysql_connect”函数,就没反应,也不报错。

如 $conn = mysql_connect("127.0.0.1","root","xxxx") or die("MYSQL数据库连接失败:".mysql_error());

apache日志目录error.log中出现

PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_mysql.dll'

解决办法

将“libmysql.dll”复制到apache的bin目录下。然后重启,观察error.log,如果错误消失,那恭喜了。

另:网上资料也有说将““libmysql.dll””“php_mysql.dll”复制到windows/system32的。

问题三

代码如下 复制代码 
 $link_id=@mysql_connect( "localhost ", "sampadm ", "secret "); 
  //以下代码省略 
?>

运行时出现如下提示: 
fatal   error:   call   to   undefined   function     mysql_connect()   in   var/www/html/mytest.php

解决方法

1.php.ini中

extension_dir设置为   "d:\apache2\php\ext "绝对路径,否则有些环境中会出错。

打开下面两行功能扩展

extension=php_mysql.dll     
  extension=php_mysqli.dll 
  
2.拷贝libmysql.dll(php目录下)和php_mysql.dll(php/ext目录下)至c:\windows\system32目录下(libmysql.dll必须为php目录下,比如我的为D:\apache2\php目录下的libmysql.dll,php_mysql.dll则在D:\apache2\php\ext) 
  
3.测试, 
  1>   先打开命令行 
A)依次点击“开始”菜单-> “mysql”-> “mysql5   server”-> “MySQL   Command   Line   Client” 
//如此步成功则mysql安全成功,失效则mysql安装失败,请卸载后重装 
  
B)输入密码 
//此步正常则说明   root账户的密码正确。失败则账号密码有错 
  
    2>   新建文件至主目录,并保存为testmysql.php,接着在浏览器中输入http://localhost/testmysql.php   (或者http://localhost:81/testmysql.php

如果不行查看一下apache是否加载了php与 mysql方法

apache中支置对php5的支持httpd.conf文件中加入下面三行
PHPIniDir "D:/ccopen/php5/"
LoadModule php5_module "D:/ccopen/php5/php5apache2_2.dll"
AddType application/x-httpd-php .php  
php.ini中去掉下面两行分号
extension=php_mysql.dll   
extension=php_mysqli.dll
将php_mysql.dll和libmysql.dll拷到system32
重起apache服务器

php无法连接mysql问题解决方法总结的更多相关文章

  1. R语言-连接MySQL数据库方法

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   R语言连接数据库常用的方法有2种: 1.使用R数据库接口 连接MySQL,使用RMySQL包,使用前RMySQL包要先安 ...

  2. navicat远程连接mysql的方法

    navicat远程连接mysql的方法1 先在打开phpmyadmin 添加用户 用户名和密码自己设置 设置如下 2 关闭防火墙service iptables status可以查看到iptables ...

  3. MySQL远程连接丢失问题解决方法Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0

    最近远程连接mysql总是提示 Lost connection 很明显这是连接初始化阶段就丢失了连接的错误 其实问题很简单,都是MySQL的配置文件默认没有为远程连接配置好,只需要更改下MySQL的配 ...

  4. 远程连接mysql 授权方法详解

    今在服务器上 有mysql 数据库,远程访问,不想公布root账户,所以,创建了demo账户,允许demo账户在任何地方都能访问mysql数据库中shandong库. 方案一: 在安装mysql的机器 ...

  5. .net连接MySQL的方法

    摘自:http://www.cnblogs.com/huayangmeng/archive/2011/04/06/2006866.html 最近要用C#做一个东西,连接之前项目的数据库(用MySQL建 ...

  6. R连接mysql数据库方法详解

    Warning messages: 1: In odbcDriverConnect("DSN=Rdata;UID=root") : [RODBC] ERROR: state IM0 ...

  7. cmd连接mysql的方法详解(转载)

    连接:mysql -h主机地址 -u用户名 -p用户密码 (注:u与root可以不用加空格,其它也一样)断开:exit (回车) 创建授权:grant select on 数据库.* to 用户名@登 ...

  8. QTP连接MYSQL数据库方法

    1.首先安装mysql数据驱动,qtp在windows系统下操作连接mysql,所以下载mysql-connector-odbc-   5.1.8-win32.msi 下载地址:http://mysq ...

  9. 没有ORM库的时候,通过PDO连接MySQL的方法

    $pdo = new PDO("mysql:host=localhost;dbname=eq","root","root"); $pdo-& ...

随机推荐

  1. java io系列08之 File总结

    本文对File的API和常用方法进行介绍. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_08.html File 介绍 File 是“文件”和“目 ...

  2. Xstart Insatll And Usage

    不进入 Linux 桌面环境,又需要运行一些图形化的软件,比如 Oracle 数据库的安装等 安装 Windows 上 Xstart 安装:https://www.cnblogs.com/jhxxb/ ...

  3. Web API中的消息处理程序(Message Handler)

    一.消息处理程序的概念 信息处理程序(Message Handler)接收HTTP请求并返回一个HTTP响应的类.Message Handler继承 HttpMessageHandler 类. 通常, ...

  4. jQuery视频格式的验证

    $(document).on('change','#videofile',function() { var file = this.files[0]; if (!/video\/\w+/.test(f ...

  5. HDU - 6304(2018 Multi-University Training Contest 1) Chiaki Sequence Revisited(数学+思维)

    http://acm.hdu.edu.cn/showproblem.php?pid=6304 题意 给出一个数列的定义,a[1]=a[2]=1,a[n]=a[n-a[n-1]]+a[n-1-a[n-2 ...

  6. 047、管理Docker Machine(2019-03012 周二)

    参考https://www.cnblogs.com/CloudMan6/p/7248188.html     用docker-machine创建machine的过程很简洁,非常适合多主机环境.除此之外 ...

  7. 细说shiro之七:缓存

    官网:https://shiro.apache.org/ 一. 概述 Shiro作为一个开源的权限框架,其组件化的设计思想使得开发者可以根据具体业务场景灵活地实现权限管理方案,权限粒度的控制非常方便. ...

  8. ubuntu 中文变成小方框 口

    今天打开ubuntu所有原来是中文的地方都变成口口口口    ,下面是解决办法,其实很简单,更新一下字体库就可以了 1. 进入到字体的目录下 /usr/share/fonts/  ,输入下面的命令 c ...

  9. 图像分类中max-pooling和average-pooling之间的异同

    池化操作时在卷积神经网络中经常采用过的一个基本操作,一般在卷积层后面都会接一个池化操作,但是近些年比较主流的ImageNet上的分类算法模型都是使用的max-pooling,很少使用average-p ...

  10. luogu P3240 [HNOI2015]实验比较

    传送门 首先根据题目条件,题目中如果是=的点可以缩起来,然后\(a<b\)连边\(a\rightarrow b\),而且所有点入度为最多1,那么判掉有环的不合法情况,题目中的依赖关系就是一颗外向 ...