闲来无事!一前端朋友找到我说他服务器安装的mysql突然间连不上了。让我帮忙看一下。

要来服务器账号密码之后:

首先查看下mysql进程:

ps -aux | grep 'mysql'

发现并没有mysql进程,初步判断是因为mysql服务没有启动导致的所以我们直接先启动一下mysql:

/etc/init.d/mysqld start

直接报 Starting MySQL...[ERROR] The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid)

经过一系列网上方法找寻:大致方法都是一下几种处理方案:

1.可能是/usr/local/MySQL/data/mysqld.pid文件没有写的权限 解决方法 : 给予权限,执行 “chown -R mysql:mysql /usr/local/MySQL/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后存盘退出重启机器试试。

然后 经过我逐一检验,这个机子的情况均不符以上描述。一阵绝望油然而生。

经过一番找寻 终于看到和上述方法不一样的处理方法

linux - MySQL server quit without updating PID file - Server Fault

因此,尝试一下

rm -rf ib_buffer_pool ib_logfile0 ib_logfile1 ibdata1 iZwz91ua0udzudign95jjeZ.err

然后重启一下服务:

/etc/init.d/mysqld start

重启成功了!

下面尝试一下cli连接数据库:

mysql -uroot -p -h 127.0.0.1

发现我朋友居然忘记设置之前的密码了……

于是乎我只能修改配置文件,先通过无密码登陆之后再修改密码了。

具体操作如下:修改mysql配置文件my.cnf在mysqld节点下加入skip-grant-tables(跳过密码权限验证)。

这个过程 我发现我居然找不到m y.cnf这个配置文件。经过查阅:官方说明:从5.7.18开始不在二进制包中提供my-default.cnf文件。5.7.18版本中,使用tar.gz安装时,也就是压缩包解压出来安装这种,已经不再需要my.cnf文件也能正常运行。很多默认配置已经编译在二进制文件中了。

但是我在support-files文件中找到一个默认的配置文件,然后直接复制出来一个使用:

cp /usr/local/mysql/support-files/my_default.cnf /etc/my.cnf

然后修改my.cnf

重启mysql:

/etc/init.d/mysqld restart

连接数据库:

​​​​​​​

 mysql -uroot -p -h 127.0.0.1

use mysql

update user set password=password("新的密码") where user="root";

flush privileges;

完美解决。

仅为记录一下踩坑的曲折离奇过程

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐