前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【黄啊码】mysql启动报错:The server quit without updating PID file[网上的都是坑货]

【黄啊码】mysql启动报错:The server quit without updating PID file[网上的都是坑货]

作者头像
黄啊码
发布2023-12-18 11:23:14
2710
发布2023-12-18 11:23:14
举报

大家好,我是黄啊码,最近在手动安装mysql的时候遇到了一点问题,然后按照网友们的操作,没一次成功,最终在一位大佬的指导下,终于解决了,特地整理如下:

原因分析:上一次关机前未正常关闭MySQL

解决方案:删除进程锁文件 /var/lock/subsys/mysql 

代码语言:javascript
复制
service mysqld start
Starting MySQL...[ERROR] The server quit without updating PID file (/usr/local/mysql/data/mysqld.pid). 

service mysqld status
MySQL is not running, but lock file (/var/lock/subsys/mysql[失败]ts

rm /var/lock/subsys/mysql

原因分析:可能进程里已经存在mysql进程 

解决方案:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重启

原因分析:可能是第二次在机器上安装mysql,有残余数据影响了服务的启动

解决方案:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉

原因分析:mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)

解决方案:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data

原因分析:可能是/usr/local/mysql/data/mysql.pid文件没有写的权限

解决方案:给予权限,执行 “chown -R mysql:mysql /usr/local/mysql/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld

原因分析:selinux惹的祸,如果是centos系统,默认会开启selinux

解决方案:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试

原因分析:未删除mysql库文件/usr/local/mysql/data中的“ib_*”文件

解决方案:删了它

在以上方法仍没有找到解决方案的时候,请根据日志获取,我的日志目录在/usr/local/mysql/var/localhost.err

日志提示:Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed

解决方案:[root@localhost mysql]# rm -rf ib_logfile*

日志提示:日志有这样的字样“initialize buffer pool,size=128.0M”,“cannot allocate memory for the pool”,大概意思是说无法分配足够的内存供pool使用。此时想到mysql配置文件中有相关的配置,于是更改如下参数:

解决方案: innodb_buffer_pool_size = 128 #配置文件中该值默认为128M

日志提示:系统上缺少mysql的依赖文件

解决方案: #yum -y install libaio #yum -y install numactl

日志提示:磁盘满了

解决方案:df -h,然后删掉一些不必要的文件

日志提示:Failed to create a socket for IPv4 '0.0.0.0', Can't create IP socket: Permission denied

解决方案:这是最坑爹的,很多网友想都没去想就直接按网上的抄,一直以为权限不够,结果最终才发现,根本就没有对应mysql用户,应该是mysqld的执行用户是mysql,然后无法使用root权限的内容。解决办法: cat /etc/my.cnf [mysqld] user=root

温馨提示:做任何修改的时候请关注mysql自身安装的目录位置。

好了,今天的分享就这里,有问题的留个言,别忘了一键三连,下次我们还会再见!

我是黄啊码,码字的码,退。。。退。。。退。。。朝

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-10-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档