呵呵,太久没用这个系列的函数了,大致意思是这样。
//创建socket监听端口$socket = socket_create_listen("55555")
//连接失败给出错误信息
if(!$socket){
exit("Failed to create socket!\n")
}
while(true){
$client = socket_accept($socket) //接受一个Socket连接
1、检查环境正常
使用mysql -u root -p 可以进入MySQL *** 作界面
直接使用/usr/local/php5/bin/php /web/test.php执行可以连上数据库
2、打开hosts加入
复制代码代码如下:127.0.0.1 qttc
使用qttc当主机连接也正常,唯独就不认localhost。
3、localhost连接方式不同导致
为了了解PHP连接数据库时,主机填写localhost与其它的区别阅读了大量资料,最后得知:
当主机填写为localhost时mysql会采用 unix domain socket连接
当主机填写为127.0.0.1时mysql会采用tcp方式连接
这是linux套接字网络的特性,win平台不会有这个问题
4、解决方法
在my.cnf的[mysql]区段里添加
复制代码代码如下:
protocol=tcp
保存重启MySQL,问题解决!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)