钧言极客站钧言极客

钧言极客

MySQL启动报错分析

刚刚编译完MySQL数据库无缘无故不能链接,重启或者连接都报错。

故障

[root@Jy ~]# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' (2)
[root@Jy ~]# service mysqld start
Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid).

故障分析

1、配置文件my.cnf问题

MySQL在启动过程中,会寻找配置文件my.cnf这个文件要指定datadir数据库的数据目录

#datedir是指向你的数据库数据目录
datadir=/date/sqldb

2、MySQL用户权限

# 赋予安装目录权限
chown -R mysql:mysql /usr/local/mysql
# 赋予数据目录权限
chown -R mysql:mysql /date/sqldb

3、skip-federated字段问题

检查my.cnf是否存在skip-federated字段,如果有请注释或者删除

4、安装问题

可能在编译安装过程中,重复安装或者二次安装。产生了残余数据影响了启动

find / -name mysql-binlog*

查看MySQL二进制目录,是否存在mysqlbinlog.index残余数据,请删除再执行命令

5、可能存在mysql进程

ps -ef | grep mysqld

pkill -9 mysqld

系统是否存在进程,使用kill -9把进程杀掉再执行重启命令

6、防火墙原因

CentOS会默认启动SELINUX

sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config;

7、关注错误日志

find / -name mysql.err
cat /usr/local/mysql/mysql.err

最后发现是防火墙的原因,为此搞了一个上午。

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《MySQL启动报错分析》
文章链接:https://www.jinjun.top/377.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 1

  1. 文章不错交个朋友

    今日头条新闻 2021年03月05日    回复