Mysql 安装问题排查方法

重启了一次服务器后,使用> 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系统。并最终解决问题,很有成就感,我喜欢这种感觉。

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

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

时间: 2024-12-23 23:04:44

Mysql 安装问题排查方法的相关文章

mysql 安装失败解决方法

在安装mysql的过程中,出现的最麻烦的问题和解决方法 安装后,启动不成功,就卡了,程序就没有响应. 如何解决: 找到mysql安装目录下的 #Path to the database root datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 该目录就是用来存放我们将来创建的数据库和表的目录, 你只需要将 C:/ProgramData/MySQL/MySQL Server 5.5 删除,再重新安装就可以.

mysql 安装错误 解决方法

错误及警告信息:TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option 解决方法:需要在my.cnf里面加入下面的参数:explicit_defaults_for_timestamp=true 错误及警告信息:Can't find messagefile '/usr/share/mysql/errmsg.sys 解决方法:需要在m

Mysql安装过程问题总结及处理方法

首次安装.运行MySQL时,可能会遇到一些错误,使MySQL服务器不能启动.本文档的目的是帮助诊断并纠正这些错误. 首先在安装mysql时,请关闭防火墙以及杀毒软件,因为防火墙和部分杀毒软件会导致mysql安装.配置失败,从而无法启动mysql服务. 解决服务器问题时的第一资料是错误日志.MySQL服务器使用错误日志来记录服务器不能启动的信息.错误日志位于my.ini文件指定的数据目录中.默认数据目录位于C:\Program Files\MySQL\MySQL Server 5.1\dat. 另

【MYSQL】mysql-5.6.19-win32免安装版本配置方法

[MYSQL]mysql-5.6.19-win32免安装版本配置方法 1.文件下载网站(http://dev.mysql.com/downloads/): 具体下载地址:http://211.136.8.28/files/222900000004F0ED/dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.19-win32.zip 2.解压mysql-5.6.19-win32.zip到C盘 3.配置环境变量的path,添加到mysql中的bin的路径,

关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享

由于防火墙问题,TCP keep alive 问题,以及 MySQL 自身的参数问题这三个在使用中比较常见,所以今天就分享下自己找到的排查方法. 今天先聊一聊防火墙问题 大多数人在第一次创建 MySQL database on Azure 实例之后便开始尝试连接.但是往往遇到的结果不是连接成功而是如下图所示的错误信息: 该错误信息表明您的 IP 地址并不在 MySQL on Azure 防火墙的准入范围之内,这种设定可以在某种程度上避免设置了简单密码的生产用户遭到恶意的字典攻击,当然 Azure

Linux安装MySQL的两种方法

转载:http://blog.csdn.net/superchanon/article/details/8546254/ 1.       运行平台:CentOS 6.3 x86_64,基本等同于RHEL 6.3 2.       安装方法: 安装MySQL主要有两种方法:一种是通过源码自行编译安装,这种适合高级用户定制MySQL的特性,这里不做说明:另一种是通过编译过的二进制文件进行安装.二进制文件安装的方法又分为两种:一种是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz

模拟生成环境的MySQL安装方法-通用二进制方式安装

模拟生成环境的MySQL安装方法-通用二进制方式安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.并发响应用户请求的网络IO模型 1>.单进程 特点:一个进程响应一个请求.而且只有一个进程,所以执行任务是串行的. 2>.多进程/线程 特点:一个进程响应一个请求,如prefork多进程模式(由master进程提前开启的多个prefork进程,然后由这些prefork进程去响应多个请求.):也可以一个线程响应一个请求,如worker多线程模式(由master进程开启多个子

mysql 执行 cannot found mac安装mysql的两种方法(含配置)

mac安装mysql的两种方法(含配置 此时我们在命令行输入mysql -uroot -p命令会提示没有commod not found,我们还需要将mysql加入系统环境变量. (1).进入/usr/local/mysql/bin,查看此目录下是否有mysql,见pic6. (2).执行vim ~/.bash_profile 在该文件中添加mysql/bin的目录,见pic7: PATH=$PATH:/usr/local/mysql/bin 添加完成后,按esc,然后输入wq保存. 最后在命令

MySQL 安装方法

所有平台的Mysql下载地址为: MySQL 下载. 挑选你需要的 MySQL Community Server 版本及对应的平台. Linux/UNIX上安装Mysql Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址: MySQL - MySQL服务器.你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器. MySQL-client - MySQL 客户端程序,用于连接并操作Mysql服务器. MySQL-devel - 库和包含文件