`

mysql启动异常mysql.sock

 
阅读更多

启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错

转载自:http://www.cnblogs.com/super-lucky/p/superlucky.html

本人还是个菜鸟,下面是我的经验之谈,能解决一些问题,有不对的地方,敬请斧正。

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

希望能对阅读的你有所帮助,谢谢!~

 

分享到:
评论

相关推荐

    Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: ….. this is incompatible with sq

    3、Can’t connect to local MySQL server through socket ‘/Data/mydata/mysql.sock’ socket文件目录不对应导致的问题 4、今天要说的就是 没有打开only_full_group_by Cause:...

    CentOS7 下安装 mysql8 详细步骤及 .sock 问题解决步骤

    在 CentOS7 系统上安装 MySQL 8 需要遵循一系列步骤,本文将详细介绍整个过程,包括如何解决可能出现的 `.sock` 文件问题。MySQL 8 是一个流行的开源关系型数据库管理系统,它提供了更高的性能、安全性和易用性。...

    深入解析mysql.sock不见的问题

    之前在网上看过好多关于mysql.sock不见的问题,并没有关注这个东西存在的意义,直到自己的mysql也出现了相同的问题。让人纠结了一把…… 代码如下:zhouqian@zhou:~$ mysqlERROR 2002 (HY000): Can’t connect to ...

    MySQL 5.6.25 源码包+安装方法 (mysql-5.6.25.tar.gz)

    4.4 启动mysql_safe # bin/mysqld_safe --user=mysql & 4.5 设置MySQL的root帐号密码 - 自动设置:# ./bin/mysql_secure_installation 或 - 手动置:# ./bin/mysqladmin -u root password '<PASSWORDHERE>' -------...

    服务器突然断电,重启后找不到mysql.sock文件、innodb引擎表(日志表)损坏.md

    服务器断电后重启,导致MySQL连接失败。mysql.sock文件丢失,innodb引擎表损坏,最直接的解决办法。

    MySQL中文参考手册.chm

    Win32 上安装 MySQL 4.12.2 在 Win95 /Win98上启动 MySQL 4.12.3 在 NT 上启动 MySQL 4.12.4 在 Win32 上运行 MySQL 4.12.5 用 SSH 从 Win32 连接一个远程MySQL 4.12.6 MySQL-Win32与Unix ...

    linux中mysql开机自动启动3种方法.docx

    ${CmdPath}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /data/${port}/mysql.sock shutdown } # restart function function_restart_mysql() { printf "Restarting MySQL...\n" function_stop_mysql sleep...

    linux mysql数据库无法启动故障处理

    在本文中,我们解决了两个常见的 MySQL 数据库无法启动的故障:mysql PID file not found 和 Can't connect to MySQL through socket mysql.sock。解决这些故障需要检查 MySQL 服务器的配置文件、日志文件、套接字...

    Mysql启动的方式(四种)

    废话不多说了,直奔主题了。...mysql -S /tmp/mysql.sock 2、mysqld_safe 启动mysql服务器:./mysqld_safe –defaults-file=/etc/my.cnf –user=root & 客户端连接: mysql --defaults-file=/etc/my.cnf or mysql -S /t

    MySQL下PID文件丢失的相关错误的解决方法

    如果服务状态异常,可以尝试手动停止MySQL服务,如`service mysql stop`或`systemctl stop mysql`。如果出现“PID file could not be found”的错误,可能需要通过`kill`命令找到并终止MySQL进程。 5. **检查配置...

    linux下安装mysql及mysql.sock问题

    在Linux系统中,MySQL数据库的安装和配置可能会遇到各种问题,特别是当涉及到连接问题时,如本文中提到的`mysql.sock`。`mysql.sock`是一个套接字文件,用于在同一台机器上的进程间通信,MySQL服务通过这个文件与...

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

    报错信息: ERROR 2002: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (111) ...其实提示找不到 /tmp/mysql.sock有时也并不是/tmp目录下没这个文件,是启动命令不对。 /u

    centos7二进制安装MySQL5.7.docx

    将MySQL的启动脚本(如 `mysqld`)复制到系统的启动目录(如 `/etc/init.d/`),并使用 `chkconfig` 添加开机启动项。 13. **启动mysql服务**: 使用 `systemctl start mysqld` 命令启动MySQL服务。 14. **修改...

    解决xampp自启动和mysql.sock问题

    标题中的“解决xampp自启动和mysql.sock问题”指的是在Linux环境下,特别是Ubuntu系统中,如何让XAMPP在开机时自动启动,并解决MySQL通过套接字文件`/var/lib/mysql/mysql.sock`无法连接的问题。 首先,XAMPP是一个...

    Can't connect to local MySQL through socket '/tmp/mysql.sock'解决方法

    总结来说,当遇到“Can't connect to local MySQL through socket '/tmp/mysql.sock'”的错误时,应首先检查MySQL服务的启动配置、套接字文件的位置、权限设置以及服务状态。通过上述方法,通常可以解决连接问题。...

    linux下非root权限的mysql安装

    /home/gametest/xute/mysql/bin/mysqld -S /home/gametest/xute/mysql/mysql.sock ``` 创建用户和授权 进入 MySQL 数据库后,需要创建用户和授权。可以使用 SQL 语句来创建用户和授权。例如: ``` create user xute...

    Redhat linux 6安装Mysql 5.6二进制包.docx

    [mysql@rhel63 3306]$ ln -s /mysql/mysql56/3306/mysql.sock /tmp/mysql.sock ``` **3. 故障三** - **故障现象**:未明确给出故障现象。 - **故障解决**:通常遇到 MySQL 服务启动失败的情况时,可以通过以下...

    ubuntu18.04卸载mysql并重新安装的方法.doc

    其中,`sudo rm /var/lib/mysql/ -R`命令将删除MySQL服务器的数据目录,`sudo rm /etc/mysql/ -R`命令将删除MySQL服务器的配置文件目录,`sudo apt-get autoremove mysql* --purge`命令将卸载MySQL服务器软件包。...

    MacOS安装MySql8.0.19及安装报错解决方案.docx

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'(2) ``` 解决方法是使用以下命令: ``` sudo chown -R _mysql:mysql /usr/local/var/mysql ``` 然后启动 MySql 服务: `...

Global site tag (gtag.js) - Google Analytics