网站地图    收藏   

主页 > 后端 > mysql数据库 >

MySQL常见错误问题解答

来源:自学PHP网    时间:2014-09-27 10:14 作者: 阅读:

[导读] 如果你向服务器发送不正确的或太大的查询,你也可能得到这些错误。如果mysqld得到一个太大或不正常的包,它认为客户出错了并关闭连接。如果你需要较大的查询(例如,如果你正在处...

  18.2.1MySQLserverhasgoneaway错误

  本小节也涉及有关Lostconnectiontoserverduringquery的错误。

  对MySQLserverhasgoneaway错误最常见的原因是服务器超时了并且关闭了连接。缺省地,如果没有事情发生,服务器在8个小时后关闭连接。你可在启动mysqld时通过设置wait_timeout变量改变时间限制。

  你可以通过执行mysqladminversion并且检验正常运行的时间来检查MySQL还没死掉。

  如果你有一个脚本,你只须再发出查询让客护进行一次自动的重新连接。

  在这种请下,你通常能获得下列错误代码(你得到的是OS相关的):

  CR_SERVER_GONE_ERROR客户不能发送一个问题给服务器。 

  CR_SERVER_LOST当写服务器时,客户没有出错,但是它没有得到对问题的一个完整的答案(或任何答案)。 

  如果你向服务器发送不正确的或太大的查询,你也可能得到这些错误。如果mysqld得到一个太大或不正常的包,它认为客户出错了并关闭连接。如果你需要较大的查询(例如,如果你正在处理较大的BLOB列),你可以使用-Omax_allowed_packet=#选项(缺省1M)启动mysqld以增加查询限制。多余的内存按需分配,这样mysqld只有在你发出较大差询时或mysqld必须返回较大的结果行时,才使用更多的内存!

  18.2.2Can’tconnectto[local]MySQLserver错误

  一个MySQL客户可以两种不同的方式连接mysqld服务器:Unix套接字,它通过在文件系统中的一个文件(缺省“/tmp/mysqld.sock”)进行连接;或TCP/IP,它通过一个端口号连接。Unix套接字比TCP/IP更快,但是只有用在连接同一台计算机上的服务器。如果你不指定主机名或如果你指定特殊的主机名localhost,使用Unix套接字。

  错误(2002)Can’tconnectto...通常意味着没有一个MySQL服务器运行在系统上或当试图连接mysqld服务器时,你正在使用一个错误的套接字文件或TCP/IP端口。 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论