mysql_real_connect连接问题

问题描述:
使用mysql_real_connect连接数据库时,报错Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

而此时直接使用mysql命令连接数据库可以

解决方法:
将参数localhost换成127.0.0.1即可


原因分析:
网上查找发现localhost与127.0.0.1是不同的,localhost是通过UNIX socket连接的,而127.0.0.1是通过TCP/IP连接的。

详细信息参考http://www.111cn.net/database/mysql/45518.htm

注:

在[mysql]中添加protocol=tcp后,mysql -hlocalhost和mysql -h127.0.0.1都通过TCP/IP连接,但mysql_real_connect中使用localhost依然不通,还未知原因。

猜你喜欢

转载自blog.csdn.net/hbuxiaoshe/article/details/47272957