解决mysql.sock找不到问题

首先我们了解一下mysql.sock是个神码东西?首先谈一下Socket 机制本身,socket为各种协议提供了统一接口的一种ipc机制。简单理解就是一种协议接口,当你使用ip去链接的时候是走TCPIP协议的,而当你使用localhost去链接的时候 他就会通过unix socket去链接。当你通过sock链接数据库而通过php.ini配置文件里面

找不到正确的mysql.sock时 他就会出错。(也就是说如果你用127.0.0.1去连接数据库一般是没有问题的,而且这个是linux网络套接字的特性,win平台不会出现这种问题。)

2016-03-13 10-36-15屏幕截图.png

2016-03-13 10-36-49屏幕截图.png

看php.ini这个默认配置在这里,实际他找不到 就会产生上面的问题。

解决mysql.sock找不到问题

有2种方法

     第一是修改php.ini文件

     第二是建立软链接

本文用第二种方法。

先找到socket实际存放位置

2016-03-13 10-36-34屏幕截图.png

然后建立软链接

2016-03-13 10-57-13屏幕截图.png

然后再次运行php程序。问题已经解决了。

2016-03-13 10-58-07屏幕截图.png


下面属于深化内容 选读

2016-03-13 11-06-55屏幕截图.png

随着计算机网络技术的发展,原来物理上的接口(如键盘、鼠标、网卡、显示卡等输入/输出接口)已不能满足网络通信的要求,TCP/IP协议作为网络通信的标准协议就解决了这个通信难题。TCP/IP协议集成到操作系统的内核中,这就相当于在操作系统中引入了一种新的输入/输出接口技术,因为在TCP/IP协议中引入了一种称之为Socket(套接字)应用程序接口。有了这样一种接口技术,一台计算机就可以通过软件的方式与任何一台具有Socket接口的计算机进行通信。端口在计算机编程上也就是Socket接口。
有了这些端口后,这些端口又是如何工作呢?例如一台服务器为什么可以同时是Web服务器,也可以是FTP服务器,还可以是邮件服务器等等呢?其中一个很重要的原因是各种服务采用不同的端口分别提供不同的服务,比如:通常TCP/IP协议规定Web采用80号端口,FTP采用21号端口等,而邮件服务器是采用25号端口。这样,通过不同端口,计算机就可以与外界进行互不干扰的通信。
据专家们分析,服务器端口数最大可以有65535个,但是实际上常用的端口才几十个,由此可以看出未定义的端口相当多。这是那么多黑客程序都可以采用某种方法,定义出一个特殊的端口来达到入侵的目的的原因所在。为了定义出这个端口,就要依靠某种程序在计算机启动之前自动加载到内存,强行控制计算机打开那个特殊的端口。这个程序就是后门程序,这些后门程序就是常说的木马程序。简单的说,这些木马程序在入侵前是先通过某种手段在一台个人计算机中植入一个程序,打开某个(些)特定的端口,俗称后门(BackDoor),使这台计算机变成一台开放性极高(用户拥有极高权限)的FTP服务器,然后从后门就可以达到侵入的目的。
二、端口的分类
端口的分类根据其参考对象不同有不同划分方法,如果从端口的性质来分,通常可以分为以下三类:
(1)公认端口(Well Known
Ports):这类端口也常称之为常用端口。这类端口的端口号从0到1024,它们紧密绑定于一些特定的服务。通常这些端口的通信明确表明了某种服务的协议,这种端口是不可再重新定义它的作用对象。例如:80端口实际上总是HTTP通信所使用的,而23号端口则是Telnet服务专用的。这些端口通常不会像木马这样的黑客程序利用。
(2) 注册端口(Registered Ports):端口号从1025到49151。它们松散地绑定于一些服务。也是说有许多服务绑定于这些端口,这些端口同样用于许多其他目的。这些端口多数没有明确的定义服务对象,不同程序可根据实际需要自己定义,如后面要介绍的远程控制软件和木马程序中都会有这些端口的定义的。记住这些常见的程序端口在木马程序的防护和查杀上是非常有必要的。常见木马所使用的端口在后面将有详细的列表。
(3) 动态和/或私有端口(Dynamic and/or Private
Ports):端口号从49152到65535。理论上,不应把常用服务分配在这些端口上。实际上,有些较为特殊的程序,特别是一些木马程序就非常喜欢用这些端口,因为这些端口常常不被引起注意,容易隐蔽。
如果根据所提供的服务方式的不同,端口又可分为TCP协议端口和UDP协议端口两种。因为计算机之间相互通信一般采用这两种通信协议。前面所介绍的连接方式是一种直接与接收方进行的连接,发送信息以后,可以确认信息是否到达,这种方式大多采用TCP协议;另一种是不是直接与接收方进行连接,只管把信息放在网上发出去,而不管信息是否到达,也就是前面所介绍的无连接方式。这种方式大多采用UDP协议,IP协议也是一种无连接方式。对应使用以上这两种通信协议的服务所提供的端口,也就分为TCP协议端口和UDP协议端口。
使用TCP协议的常见端口主要有以下几种:
(1) FTP:定义了文件传输协议,使用21端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。
(2)Telnet:它是一种用于远程登陆的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。如以前的BBS是纯字符界面的,支持BBS的服务器将23端口打开,对外提供服务。
(3)SMTP:定义了简单邮件传送协议,现在很多邮件服务器都用的是这个协议,用于发送邮件。如常见的免费邮件服务中用的就是这个邮件服务端口,所以在电子邮件设置中常看到有这么SMTP端口设置这个栏,服务器开放的是25号端口

php 9000端口 redis6379端口,htpp协议80端口 memcache 11211端口 mysql3306端口


potrkkw

2017-03-30 13:51:24
qZtYnG <a href="http://tfgabzwzpebf.com/">tfgabzwzpebf</a>, [url=http://vtvrfefyrbje.com/]vtvrfefyrbje[/url], [link=http://tomcxbixpywf.com/]tomcxbixpywf[/link], http://hptreyyvvhxq.com/

qfglfe

2017-03-29 21:36:58
mULvdZ <a href="http://ofljcwfrsrmr.com/">ofljcwfrsrmr</a>, [url=http://ggfgpmkqfnud.com/]ggfgpmkqfnud[/url], [link=http://mqjscpstzdet.com/]mqjscpstzdet[/link], http://kgvgzhmpfbrw.com/

lyaguti

2017-03-29 18:34:03
UrrQ2p <a href="http://wbdzcivjrnyw.com/">wbdzcivjrnyw</a>, [url=http://xshiovfegndx.com/]xshiovfegndx[/url], [link=http://efuvjskqoegr.com/]efuvjskqoegr[/link], http://ephxpmjgwneh.com/

安装- -

2016-06-13 22:53:35
http://www.jb51.net/article/31366.htm

博主

2016-03-19 10:45:01
实验证明,这种设置软连接的方法并不十分可靠,因为他放在TMP目录下,用了一段时间后我又发现了异常,这次使用更改php.ini的方法,修改其默认值,pdo_mysql.default_socket=(查找到的sock文件路径+文件名称);这次应该算是一劳永逸了。
nickname
content