mysql启动失败,报没有pid错误
mysql启动失败,报没有pid错误
安装完Mysql后,启动mysqld失败,花了很长时间才找到原因,现在根据网友提供的解决方法汇总一下,方便遇到时可以参考排查
现象:service mysql start 时提示如下错误:
[root@mysqldb data]# service mysql start
Starting MySQL…The server quit without updating PID file ([失败]/data/3306/mysql.pid).
原因分析:
mysql.pid文件是在重动mysql的时候会创建的,如果创建失败就会提示这个错误,发现导致此错误有很多种原因,像权限、端口被占用、参数文件配置错误等等,现具体的如下:
解决方式:
在mysql的datadir数据目录下没有pid文件或者未被授权
- 一定要给譬如/data/mysql授权
chown -R mysql:mysql /data/mysql
- 如果授权了不好使,你可以自己在/data/mysql下建立一个以主机名命名的pid,如我的主机名是centos-6.3
cd /data/mysql && touch centos-6.3.pid
# 在里面随意写一个进程中没有的pid号
如果还是不行,你就需要看看配置文件/etc/my.cnf里面的配置了,将port、datadir、basedir、 socket前的#去掉
另外的处理方法还有可能是下面的原因导致
a. 可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
解决方法:
去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。
b. mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
解决方法:
请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data
c. skip-federated字段问题
解决方法:
检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。
d. selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:
关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。
e. 由于是以系统命令方式启动的,检查mysql.server配置文件内的配置项是否正确,若 无法判断参数是否正确,可以以Mysqld_safe来启动
参考命令如下:
[root@mysqldb 3306]# ll
total 8
drwxr-xr-x 5 mysql mysql 4096 Mar 15 19:16 data
-rw-r–r-- 1 mysql mysql 3676 Mar 15 18:44 my.cnf
[root@mysqldb 3306]# vi mysql.start --创建
/mysql/app/mysql/bin/mysqld_safe --defaults-file=/mysql/data/3306/my.cnf --user=mysqld
[root@mysqldb 3306]# chmod -R 777 mysql.start --授权
[root@mysqldb 3306]# ll
total 12
drwxr-xr-x 5 mysql mysql 4096 Mar 15 19:16 data
-rw-r–r-- 1 mysql mysql 3676 Mar 15 18:44 my.cnf
-rwxrwxrwx 1 root root 89 Mar 15 22:36 mysql.start
[root@mysqldb 3306]# ./mysql.start
[root@mysqldb 3306]# 2018-03-15T14:36:52.021705Z mysqld_safe Logging to ‘/mysql/log/3306/mysqldb-error.err’.
2018-03-15T14:36:52.043126Z mysqld_safe Starting mysqld daemon with databases from /mysql/data/3306/data
[root@mysqldb 3306]# ps -ef|grep mysqlroot
3627 1 0 22:36 pts/0 00:00:00 /bin/sh /mysql/app/mysql/bin/mysqld_safe --defaults-file=/mysql/data/3306/my.cnf --user=mysqldmysql
4764 3627 48 22:36 pts/0 00:00:11 /mysql/app/mysql/bin/mysqld --defaults-file=/mysql/data/3306/my.cnf --basedir=/mysql/app/mysql --datadir
=/mysql/data/3306/data --plugin-dir=/mysql/app/mysql/lib/plugin --user=mysqld --log-error=/mysql/log/3306/mysqldb-error.err --open-files-limit=65536
–pid-file=/mysql/data/3306/mysql.pid --socket=/mysql/data/3306/mysql.sock --port=3306
root 4796 2174 0 22:37 pts/0 00:00:00 grep mysql
f. Mysql关闭时命令是否正确,第6点与本文说明不一致,但是这个非正确关闭也会导致这种现象
mysql启动失败,报没有pid错误的更多相关文章
- MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法
MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法 错误2,系统找不到文件. 开始...运行... regedit 注册表项: HKEY_LOCAL_ ...
- 解决mysql启动失败报1067错误
最近做项目使用 mysql 数据库 ,因为卸载了鲁大师造成了数据库文件缺失.重装mysql数据库后启动出现了1067错误,详情如下 在网上查了错误原因,将my.ini文件下的默认搜索引擎换成了 myi ...
- Mysql 启动失败 报错 1067
Mysql装好后,重启电脑第二次发现服务无法启动.提示如下: ------------------------ MySQL 服务无法启动. 系统出错. 发生系统错误 1067. 进程意外终止. --- ...
- XAMPP中Apache和Mysql启动失败问题总结
一.Apache启动失败 xampp启动时显示的错误为: 9:52:41 [Apache] Attempting to start Apache app... 9:52:41 [Apache] ...
- Mysql启动失败解决方案 - 个人经验可能不适合所有场景
以前一直用的Mysql5.5,安装程序是一个exe程序,安装完了相应的服务也给我注册好了,然后直接启动连接即可. 最近升级到了8.0.15,发现和以前不一样了. 8.0.15下载地址 安装解压之后目录 ...
- Linux下mysql启动失败
原因:强制重启服务器之后,发现mysql启动 失败 解决方法:强制清空 报错路径下的tmp文件,清空之后在tmp下面新建一个文件夹,文件夹的名字在你清空tmp之后启动mysql系统会给你提示 欧克,完 ...
- mysql 启动失败,数据恢复
mysql 启动失败,数据恢复 2017年02月13日 16:46:36 阅读数:621 Forcing InnoDB Recovery提供了6个等级的修复模式,需要注意的是值大于3的时候,会对数据文 ...
- MySQL创建函数报“ERROR 1418 ”错误,不能创建函数
MySQL创建函数报ERROR 1418错误,不能创建函数,根据官方提示是说,不能创建函数可能是一个安全设置方面的配置或功能未开启原因,下面我们一起来看. 错误 ERROR 1418 (HY000 ...
- Mysql启动失败 MYSQL:The server quit without updating PID file
MySQL5.6启动时出错 提示MYSQL:The server quit without updating PID file 首先执行 /bin/mysqld_safe --user=mysql & ...
- Mysql 启动失败常见错误
各位可以按照顺序逐条拍错. mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/my ...
随机推荐
- ChatGLM 拉取清华git项目
windows使用nvdia显卡运行ChatGLM 1. 安装nvidia显卡驱动 https://developer.nvidia.com/cuda-11-8-0-download-archive? ...
- 【Python入门教程】批量修改文件名,批量移动文件
Python提供了高效的高级数据结构,还能简单有效地面向对象编程.Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言.本篇文章是&quo ...
- 如何批量修改 GitHub 代码提交作者
批量修改 GitHub 代码提交作者需要进行以下步骤: 首先,你需要 clone 远程仓库到本地,使用以下命令: git clone <repository-url> ``` 将 `< ...
- 基于MQTT的弱网环境应用
MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传输协议,设计用于低带宽和不稳定网络环境下的物联网设备之间的通信. 以下是MQTT的一些关键特点和常 ...
- Loguru:优雅的日志管理模块
安装 pip3 install loguru 日志等级 等级 方法 TRACE logger.trace() DEBUG logger.debug() INFO logger.info() SUCES ...
- 如何优化数据warehouse的搜索和查询
目录 1. 引言 2. 技术原理及概念 2.1 基本概念解释 2.2 技术原理介绍 2.2.1 查询优化 2.2.2 索引优化 2.2.3 数据访问优化 2.3 相关技术比较 2.3.1 SQL 2. ...
- React后台管理系统 02样式初始化,引入reset-css
上一篇中,我们已经对项目的整体结构进行了搭建,现在需要对不需要的东西进行删除,最后留下这些东西. 现在需要对全部的样式进行清除,使用命令导入依赖:npm i reset-css 然后在main.tsx ...
- PostgreSQL 12 文档: 系统表
第 51 章 系统目录 目录 51.1. 概述 51.2. pg_aggregate 51.3. pg_am 51.4. pg_amop 51.5. pg_amproc 51.6. pg_attrde ...
- iis7以上 ssl 证书导入
证书导入 开始 -〉运行 -〉MMC: 启动控制台程序,选择菜单"文件"中的"添加/删除管理单元"-> "添加",从"可用的 ...
- Federated Learning004
联邦学习--笔记004 2023.03.13周一 快中期答辩了(3.20),最近甲流高发期 毕设期间,今天学习了联邦学习的一篇论文---Differentially Private Federated ...