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系统。并最终解决问题,很有成就感,我喜欢这种感觉。

时间: 2024-05-09 10:08:38

mysql启动错误:mysql.sock丢失的相关文章

MySQL启动错误解决方法_Mysql

一般情况下mysql的启动错误还是很容易排查的,但是今天我们就来说一下不一般的情况.拿到一台服务器,安装完mysql后进行启动,启动错误如下: 有同学会说,哥们儿你是不是buffer pool设置太大了,设置了96G内存.这明显提示无法分配内存嘛.如果真是这样也就不在这里进行分享了,哈哈. 我的服务器内存是128G.如下图: 服务器内存使用情况: 那么问题来了,既然还剩如此多的内存,为什么提示无法分配内存??.各位童鞋怎么看? 1. 首先想到会不会是有几条内存坏了?于是运维的同学进行了检查,给我

MySQL启动错误怎么解决 MySQL启动错误解决方法

一般情况下mysql的启动错误还是很容易排查的,但是今天我们就来说一下不一般的情况.拿到一台服务器,安装完mysql后进行启动,启动错误如下. 有同学会说,哥们儿你是不是buffer pool设置太大了,设置了96G内存.这明显提示无法分配内存嘛.如果真是这样也就不在这里进行分享了,哈哈. 我的服务器内存是128G.如下图: 服务器内存使用情况: 那么问题来了,既然还剩如此多的内存,为什么提示无法分配内存? 1. 首先想到会不会是有几条内存坏了?于是运维的同学进行了检查,给我的反馈是硬件一切正常

mysql启动错误1053

环境:win7下的mysql5.5.20版本 1.在dos 命令行中cd到mysql的bin目录下 启动:mysqld.exe --console 接着服务器就启动了,打印信息如下: 130104 17:07:49 InnoDB: Waiting for the background threads to start 130104 17:07:50 InnoDB: 1.1.8 started; log sequence number 48378020 130104 17:07:51 [Note]

MySQL启动错误Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

上午刚装完MySQL,启动时报如下错误: Starting MySQL.Manager of pid-file quit without updating file.[FAILED] 依次尝试了从谷姐找到的各种方法,发现只要执行如下MySQL初始化命令即可解决: /usr/local/mysql/bin/mysql_install_db --user=mysql 下面附上从谷姐找到的解决此问题的方法集锦,也许每个人遇到的问题的原因会不一样,经供参考: 一.查看报错日志 报错日志是我们解决问题的方

mysql启动错误1067简单解决方法

  解决方法 mysql数据库在运行时会在c盘windows文件夹下的temp文件夹里自动生成临时文件,这些文件不大,但是数量特别多,一个月下来很有可能就有几十万个文件了,导致mysql启动失败的罪魁祸首就是这些文件了,所以我们要做的就是删除这些文件,不过建议大家不要打开这个文件夹来删除,如果文件很多的话很容易出现打开很慢甚至卡死服务器的情况出现,所以在cmd窗口下用del命令来解决是最好的(如下) 经过以上操作,只要稍等一会里面的垃圾文件就都删除了,这时候只要重启你的mysql服务就可以了.为

mysql启动提示mysql.host 不存在,启动失败

但是对我第一次摸mysql,确实怎么也弄不懂的问题. 好了闲话不多说 说一下我解决的过程: 按照mysql的安装步骤: shell> groupadd mysql shell> useradd -g mysql mysql shell> gunzip < mysql-VERSION.tar.gz | tar -xvf - shell> cd mysql-VERSION shell> ./configure --prefix=/usr/local/mysql shell&

mysql启动提示mysql.host 不存在,启动失败的解决方法_Mysql

error 日志当中的记录: [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist 从发了帖子,只有人看,没有人回复,看到这种情况只能自己解决问题了,自己动手丰衣足食吗, 嗯... 你还别说,还真让我解决了问题,人啊,都是逼出来的,....没有办法,这个问题对于高手可能是很简单的问题 ,但是对我第一次摸mysql,确实怎么也弄不懂的问题. 好了闲话不多说 说一下我解决

安装解压版本的MySQL,安装过程中的常见命令,检查windows系统错误日志的方式来检查MySQL启动错误,关于Fatal error: Can&amp;#39;t open and lock privilege

安装mysql 下载mysql-5.6.26-winx64,并解压到:D:\Installed\mysql-5.6.26-winx64\mysql-5.6.26-winx64 创建data目录 创建my.ini,内容如下: [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=D://Installed//mysql-5.6.26-win

mysql 启动错误1067 问题及解决方法_Mysql

本文向码农们介绍mysql服务无法启动报错误1067解决方法. 试了谷歌到的几种方法,都没有解决,然后突然想起在启动apache的时候,iis的端口占用情况(因为我的apache也使用了80端口),所以  打开命令行 netstat -aon|findstr "3306" 结果显示 默默的在内心深处骂了一句"靠", 果然是端口占用,然后,顺藤摸瓜 tasklist|findstr "416" 结果显示 不得不联想到,优酷的攻城狮们的mysql数据