一个完美的解决问题的办法,MySQL不能通过本地连接数据库
问题:一个服务器不能PHP程序连接数据库,通过本地主机地址,但如果它被设置为127.0.0.1,可以正常连接,并连接到其他数据库服务器,MySQL的权限设置是否正确,并使客户能够通过MySQL命令行连接数据库。
分析:这是一个典型的套接字没有正确设置的情况。
有两种方式连接MySQL数据库:TCP / IP(港口那种一般的理解)和UNIX套接字(一般称为插座或袜子)。在大多数情况下,本地主机可以用来代表127.0.0.1的机。但当MySQL连接,两者不能混合,和localhost和127.0.0.1也分别设置MySQL的权限设置,当设置为127.0.0.1,系统通过TCP / IP连接数据库;当设置为本地主机,系统通过对数据库的连接插座。
解决方案:首先,您要查看mysql套接字套接字文件在哪里,并查看命令:
mysqld详细帮助| grep插座
输出显示套接字文件的位置,例如:这个服务器显示它
插座 / / /无功运行mysqld / mysqld.sock
然后改变PHP配置文件php.ini中与之对应。
找到这个:
mysql.default_socket =
一般来说,此项是空的,并且更改为:
mysql.default_socket = / / /无功运行mysqld / mysqld.sock
根据您的情况,这里应该有一个要搜索的文件。如果是CLI(命令行)或CGI,它将立即生效。如果是FastCGI,它需要重新启动FastCGI进程。
MySQL上面的完美的解决方案不能通过本地连接数据库。问题是要分享的全部内容,小编的,希望能给大家一个参考,我希望你能支持它。
tag:数据库连接数据库本地连接解决问题办法
相关内容