您当前的位置: 首页 > 数据库教程 > MySQL教程 > mysql启动错误:mysql.sock丢失

mysql启动错误:mysql.sock丢失

作者:不详 来源:网络 发布时间: 2014-07-20 21:19 点击:
我的是CentOS6.3+MySQL5.1.57。重启了一次服务器后,使用 mysql -u root -p登陆是出现下面的错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 于是,我检察mysql状态: /etc/rc.d/init.d/mysqld status 显示stop

mysql启动错误:mysql.sock丢失

  我的是CentOS6.3+MySQL5.1.57。重启了一次服务器后,使用> mysql -u root -p登陆是出现下面的错误:

  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  于是,我检察mysql状态:

  > /etc/rc.d/init.d/mysqld status

  显示stop,未运行。

  >/etc/rc.d/init.d/mysqld restart

  Stopping mysqld: [ OK ]

  MySQL Daemon failed to start.

  Starting mysqld: [ FAILED]

  >ps -ef | grep mysql

  root 28221 27474 0 14:18 pts/0 00:00:00 grep mysql 只有这一条

  至此,我可以确定,mysql无法启动。

  我开始排错,首先发现/tmp/mysql.sock不存在

  >vim /etc/my.cnf

  socket=/var/lib/mysql/mysql .sock

  /var/lib/mysql/mysql .sock同样不存在

  >find / -name mysql.sock

  显示为空,未查询到mysql.sock文件,mysql.sock文件丢失了。

  我看网上有人说mysql.sock套接字文件可以简单地通过重启服务器重新创建得到它,

  >init 6 重启命令

  重启后发现错误还是那样,没有任何改变,mysql.sock重启服务器未自动生成。

  接下来了解到mysql.sock是一个临时文件,在mysql启动时会自动生成,我的服务器未启动,自然就没有mysql.sock文件。

  我尝试安全启动模式,mysqld_safe试图通过工作目录找到服务器和数据库,但mysqld_safe还是失败。

  >mysqld_safe &

  Starting mysqld daemon with databases from ....../mysql/var

  STOPPING server from pid file .......pid

  130802 15:17:11 mysqld ended

  各种命令尝试无效的情况下,我开始了本次最大的收获----学会看错误日志。

  


  在错误日志中,启动失败的原因极为明显,file ‘./mysql-bin。000004’ not found,failed to open!

  mysql开启了bin日志功能,到数据库根目录查看该文件是存在的,可能是文件权限的问题。

  >chown -R mysql:mysql /....../mysql/var

  >mysqld_safe &

  >/etc/rc.d/init.d/mysqld restart

  Stopping mysqld: [ OK ]

  Starting mysqld: [ OK]

  


  成功启动了!~

  


  此时mysql.sock文件出现了,在/var/lib/mysql/mysql .sock。如下图所示,以”s”开头的文件都是socket文件。

  


  > mysql -u root -p

  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  /tmp/mysql.sock

  解决这个错误很简单,因为/tmp/mysql.sock不存在,用这样的方法:

  >ln -s /var/lib/mysql/mysql .sock /tmp/mysql .sock

  


  以”l”开头的文件是软链接文件。或者可以通过修改/etc/my.cnf文件来修正它。

  


  成功解决了!~

  就是这样一个问题折腾了我这么久,错误日志让它无所遁形。查看错误日志可以明确问题所在,而不是像我之前那样盲目的找错。

  俗话说授人以鱼不如授人以渔,学会查看日志,你也可以方便快捷的解决问题了。

  错误使人进步,我与这个错误斗争了四个多小时,对linux的“一切皆文件”这句话有了更深的了解,对我学习文件系统管理(目录树)有很大的帮助,让我的思维真正的从windows操作系统转向成linux系统。并最终解决问题,很有成就感,我喜欢这种感觉。
分享到:
本文"mysql启动错误:mysql.sock丢失"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4