问题:php程序连接mysql只能使用localhost,不能使用127.0.0.1

系统环境:centos5.6 64位系统  mysql 版本5.6.29 php版本5.6.22

以下为我解决问题的过程:

1、根据出错的提示信息“sqlstate hy000 2002 Permission denied”  使用google搜索mysql_connect 有人说是可能mysql_connect这个函数被禁用了,使用其它的连接,测试过不行。

2、使用google搜索mysql能用localhost连接,不能使用127.0.0.1连接,结果大部分人的解决办法是:

修改my.cnf文件,去掉skip_networking,bind_address=127.0.0.1,重启mysql 故障依旧。

权限问题,grant all privileges on *.* to 'root'@'127.0.0.1' identified by '密码';   然后flush privileges;  故障依旧。

修改/etc/hosts文件,添加127.0.0.1  localhost 项,故障依旧。

3、查看apache错误日志,发现只记录了文件不存在之类的日志信息,未发现和访问mysql数据连接文件相关的项目。

4、查看mysql的日志,未发现相关的连接项目。

5、最后我想起来要查看一下系统日志/var/log/messages 信息太多,清理之:  echo "" > /val/log/messages 然后访问 数据连接测试文件。发现了如下信息:

Nov 30 10:18:49 localhost setroubleshoot: SELinux 正在阻止http 守护进程连接到网络端口3306 For complete SELinux messages. run sealert -l a214e214-c710-4c84-9eb

2-12764f4b27de

结果就很明显了,是selinux闯的祸,关闭selinux测试一下“/usr/sbin/setenforce 0 立刻关闭SELINUX  ”  数据库连接一切正常。

最后得出一个结论,请大家在安装服务器的时候,一定要selinux给关闭掉。下面给出方法:

如何关闭SeLinux

1、快速关闭SElinux,使用如下命令就可以:

/usr/sbin/setenforce 0 立刻关闭SELINUX

/usr/sbin/setenforce 1 立刻启用SELINUX

2、加到系统默认启动里面

echo "/usr/sbin/setenforce 0" >> /etc/rc.local

3、可以编辑配置文件达到同样的目的

vi /etc/selinux/conf

set SELINUX=disabled

mysql能用localhost连接不能使用127.0.0.1连接的解决办法相关推荐

  1. 无法访问localhost与127.0.0.1/本地服务器的解决办法

    无法访问localhost与127.0.0.1/本地服务器的解决办法 无法访问本地服务器 解决方式: 打开"程序与功能" 点击"启动或关闭Windows功能" ...

  2. linux telnet 127.0.0.1 不通,Linux 出现telnet: 127.0.0.1: Connection refused错误解决办法

    Linux 出现telnet: 127.0.0.1: Connection refused错误解决办法 Linux 出现telnet: connect to address 127.0.0.1: Co ...

  3. 连接远程服务器CredSSP加密Oracle修正报错解决办法

    连接远程服务器CredSSP加密Oracle修正报错解决办法: 打开注册表,快捷输入 "regedit"(类似找命令提示符 输入 cmd 一样)找文件夹 路径:HKLM(缩写)\S ...

  4. 关于Navicat Premium连接Oracle数据库闪退(失败)的解决办法(带ocl.dll)

    关于Navicat Premium连接Oracle数据库闪退(失败)的解决办法(带ocl.dll) 先下载这两个文件(oci.dll.sqlPlus) oci.dll:https://download ...

  5. 出现“连接到服务器失败。错误: 0x80080005”错误的解决办法

    今天在虚拟机中安装QQ和office的时候都提示错误,无法安装,然后我查看了下系统日志,发现OFFICE提示无法连接服务器,我就想是不是没有联网? 我立刻联网,发现故障照旧,然后我用了下度娘,好处还是 ...

  6. MYSQL之You can't specify target table for update in FROM clause解决办法

    MYSQL之You can't specify target table for update in FROM clause解决办法 2016年12月21日 15:24:23 阅读数:19272 这篇 ...

  7. 记一次mysql数据库转储sql文件到另外一台电脑运行失败的解决办法

    记一次mysql数据库转储sql文件到另外一台电脑运行失败的解决办法 将转储的sql文件中创建触发器相关的语句剪切复制到另外的一份文本,保存重新运行sql文件,成功后在把之前剪切的语句复制过来在运行一 ...

  8. Windows10 远程桌面连接失败,报CredSSP加密oracle修正错误解决办法

    [Windows]Win10家庭版启用组策略gpedit.msc https://blog.csdn.net/u013642500/article/details/80138799  Windows1 ...

  9. mysql出现2058,连接MySQL报“Error No.2058 Plugin caching_sha2_password could not be loaded”错误的解决办法...

    点击数:312 原因: MySQL新版默认使用caching_sha2_password作为身份验证插件,而旧版是使用mysql_native_password 当连接MySQL时报错"pl ...

  10. ArcGIS 的 http://localhost:8399/arcgis/rest/services 无法打开,显示404 的解决办法

    在arcgis做SOE的时候,由于ArcGIS的问题,计算机名称不能是带有 "-" 的,所以在更改了计算机名后,arcGIS Server就会失效. 即打开http://local ...

最新文章

  1. Visual Studio中的Build和Rebuild区别
  2. php添加linux定时任务,PHP与Linux定时任务
  3. rockbox主题包安装_DUX主题
  4. 51CTO首页改版上线 欢迎大家拍砖!
  5. 扫描40亿可路由的 IPv4 地址后发现这些打印机的 IPP 端口遭暴露
  6. Unity3D之UGUI基础10:画布的三种模式
  7. Joomla网站的移植步骤
  8. 系统学习深度学习(三十八)--深度确定性策略梯度(DDPG)
  9. 21. Don't try to return a reference when you must return an object
  10. 从官网通过execl制作省市区行政代码
  11. iPhone软件KK唱响评测 在线视频比拼歌声
  12. PVE7.2 显示CPU温度和频率
  13. 【易错点 学习笔记】Solidity语法constant/view/pure
  14. 联想T420S 黑苹果GPT+UEFI单系统安装
  15. python实现工作流审批_工作流和审批流
  16. 【Matlab数字识别】数字仪表图像识别【含源码 693期】
  17. react-native 报错Cannot add a child that doesn't have a YogaNode to a parent without a measur
  18. Linux运维常见面试题之精华收录
  19. 微信小程序引入原生组件——WeUI组件库,详细步骤
  20. 听VOA还不如学这些

热门文章

  1. Ubuntu 镜像站使用帮助 清华大学开源软件镜像站
  2. location.href表示当前访问的网址url
  3. 微信小程序(扫一扫功能)
  4. 基于STM32F103移植FreeRTOS教程
  5. PCB设计软件之二:Mentor PADS Pro VX2.10版本安装使用
  6. SlickEdit 之windows 版本安装
  7. 2022年京东双十一iPhone14pro会降价吗?
  8. C Primer Plus 中关于*修饰符(抑制赋值)的一些总结
  9. PHY6252超低功耗物联网蓝牙无线通信芯片
  10. CQ: 字节系创作质量中台实践