ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (

转载 2015年03月04日 12:26:14

我的是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

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

mysql启动错误:mysql.sock丢失 三联

  在错误日志中,启动失败的原因极为明显,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系统。并最终解决问题,很有成就感,我喜欢这种感觉。


相关文章推荐

centos下mysql问题记录--ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/

一、关于云主机的mysql最近一次云主机的服务器由于被攻击便打算重装一边mysql,彻底删除相关文件后重新安装,没想到怎么装都会出问题。再启动的时候总是出现ERROR 2002 (HY000): Ca...

Linux上mysql登陆错误解决办法ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/

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

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

本文摘自:http://blog.csdn.net/lmss82/article/details/4414178 输入 #mysql -u root -p   ERROR 2002 (HY00...

记一次 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock’(2) 排错流程

在linux与unix系统的socket文件是为了建立两个程序之间的连接使用的 , 而在mysql中,当mysql启动成功时,会根据配置文件中设定的路径(如:tmp/mysql.sock),在tmp中...

删/tmp下面的文件,好了吧,mysql连不了,ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var

mysql.sock文件呢? 很多进程杀不死,删了/tmp下面的文件  误删了什么? ERROR 2002 (HY000): Can't connect to local MySQL server...

Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 解决方法

今天遇到 Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 这个问题,在网上也找了一些相关的...

ERROR 2002 (HY000): Can't connect to local MySQL server through socket

在安装好了MySQL之后,使用了新的配置文件后,MySQL服务器可以成功启动,但在登陆的时候出现了ERROR 2002 (HY000): Can't connect to local MySQL se...

Mysql连接错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (

1.首先查看  /tmp 目录下有没有 mysql.sock              在终端上;prompt> ls /tmp | grep mysql.sock     结果发现该目录下没有m...
  • wzb56
  • wzb56
  • 2011年03月31日 21:03
  • 5462

Linux下Mysql数据库 Can 't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '

Mysql数据库安装到Linux的时候会在linux建立一个名为mysqld的服务。 可以使用命令:chkconfig --list ,查看linux系统中所有的服务。 可以看到上图倒...

关于 Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock的问题

我们在输入命令 mysq -u用户名 -p密码 时,会出现一些链接问题,本文参考网上之后,大概的解决流程,比较详细,希望能给大家一些帮助。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (
举报原因:
原因补充:

(最多只允许输入30个字)