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

原创 2017年02月15日 14:46:09

        今天遇到 Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 这个问题,在网上也找了一些相关的文章,尝试了网上的许多方法,可是都没有解决问题。后来发现原来在mysqld与mysql中socket的配置是不一样的,

在my.cnf文件中把socket配置成了socket=/tmp/mysql.sock ,而我在mysql.sock中却没有配置,因此造成了这个问题的出现。当我在mysql.sock的配置中添加上socket=/tmp/mysql.sock ,

如果在centos启动mysql的进程时,结果发现

The server quit without updating PID file这个错误时,相关的解决方法如下:

用df命令查了下,果然磁盘满了,因为当时分区采用系统默认,不知道为什么不能自动扩容!以后在处理这个问题!如图所示:
[root@snsgou ~]# df
文件系统                 1K-块      已用      可用 已用% 挂载点
/dev/mapper/vg_snsgou-lv_root
51606140  47734848   1249852  100%      /
tmpfs                  1953396        88   1953308   1%           /dev/shm
/dev/sda1               495844     37062    433182   8%        /boot
/dev/mapper/vg_snsgou-lv_home
229694676    191796 217835016   1%       /home
[root@snsgou ~]#
删除了些没用的日志后,重新启动数据库还是出错。
[root@snsgou mysql]# service mysql restart
MySQL server PID file could not be found![失败]
Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/snsgou.pid).[失败]
Google了下 ,问题可能的原因有多种,具体什么原因最好的办法是先查看下错误日志:
1、可能是/usr/local/mysql/data/mysql.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data”  然后重新启动mysqld!

2、可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9  进程号”杀死,然后重新启动mysqld!

3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !

4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data

5、skip-federated字段问题
解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

6、错误日志目录不存在
解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

7、selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

我是第七种情况解决的

相关文章推荐

connection to dat Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

[root@t1 ~]# tail /tmp/zabbix_server.log   23392:20160303:131022.598 [Z3001] connection to database...

linux服务器端口查看的方法

1、用netstat查看:   [grid@rac121 admin]$ netstat -anp  | grep oracle (Not all processes could be ide...

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密码 时,会出现一些链接问题,本文参考网上之后,大概的解决流程,比较详细,希望能给大家一些帮助。...

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' ...

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

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

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '***' (2)   有时候,当我们使...

启动SQL提示"Can't connect to local MySQL server through socket '/tmp/mysql.sock"参考解决方案

写了个脚本可以定时访问本地安装的mySQL,启动本地sql时,突然报下面错误: ERROR 2002 (HY000): Can't connect to local MySQL server ...
  • lizitao
  • lizitao
  • 2016年11月17日 14:09
  • 1965

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...

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

今天在ubuntu上连接mysql数据库时,遇到一个小问题  Can't connect to local MySQL server through socket '/var/run/mysqld/m...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 解决方法
举报原因:
原因补充:

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