怎么解决localhost无法链接本地mysql数据库问题

如题所述

分析:这是典型的socket没有正确设置的情况。
连接MySQL数据库有两种方式:TCP/IP(一般理解的端口的那种)和Unix套接字(一般叫socket或者sock)。大部分情况下,可以用localhost代表本机127.0.0.1,但是在MySQL连接时,二者不可混用,而且MySQL中权限设置中localhost与127.0.0.1也是分开设置的。当设置为127.0.0.1时,系统通过TCP/IP方式连接数据库;当设置为localhost时,系统通过socket方式连接数据库。
解决:首先要看本机MySQL的socket套接字文件在哪里,查看命令是:
mysqld --verbose --help | grep socket
输出结果显示套接字文件的位置,比如:这台服务器显示的是
socket /var/run/mysqld/mysqld.sock
然后修改php的配置文件php.ini与之对应起来就好了。
找到这一项:
mysql.default_socket =
一般来说这一项都是空的,改成:
mysql.default_socket = /var/run/mysqld/mysqld.sock
这里应写上一步查询到的文件,根据你的情况设置。至此php配置就修改好了,如果是CLI(命令行)方式或者CGI方式的话,立即就生效,如果是FASTCGI方式,需要重启一下fastcgi进程。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-28
工具/原料

电脑
dreamweaver
Navicat for MySQL
方法/步骤

1、首先在本地使用Navicat for MySQL建立一个数据库。
2、在dreamweaver中建立一个PHP格式的网页,方便链接测试。

3、测试发现,如果无法使用localhost链接mysql数据库就会提示错误信息
4、如果出现第三步的情况,就需要修改C:\Windows\System32\drivers\etc目录下的hosts文件。

5、用记事本打开hosts,找到127.0.0.1 localhost这一行,把这一行的“#”删除,保存。如果没有这一行,就自己手动添加。

6、保存后,再使用之前的网页测试。
7、这个时候就可以通过localhost链接的本地的mysql数据库了。
第2个回答  推荐于2017-10-08

  首先啊  你这个问题提的不明确啊。也不知道你的无法连接时咋个无法连接。报错你都没给,
不过    链接不上的可能性有这些:

    没开启服务

    没输入正确的用户名密码

  目前我就知道这两个   这里我刚刚百度了下  给你个网址  也可以自己去看看 很详细
http://jingyan.baidu.com/article/d45ad14896d1cd69542b805c.html

本回答被提问者采纳
第3个回答  2020-06-05
下载phpcustom优化一下就可以了
可以一键修复使用localhost连接mysql速度慢
相似回答