mysql数据库启动失败

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

重启服务器后-->重启应用服务(Confluence)-->报错,数据库连接失败(mysql设置了开机自启动)-->查看mysql数据库状态:

1
2
[root@fisheye ~] # ps -ef | grep mysql
root     25555 21974  0 11:28 pts /0     00:00:00  grep  mysql

启动mysql服务器

1
2
3
[root@fisheye data] # service mysql start
MySQL server PID  file  could not be found![失败]
Starting MySQL.............. ERROR! The server quit without updating PID  file  ( /mydata/data/fisheye ..pid).[失败]

查看错误日志:

1
2
3
4
5
6
7
8
9
10
[root@fisheye data] # tail -100 fisheye.err
InnoDB: Last MySQL binlog  file  position 0 337403929,  file  name . /mysql-bin .000016
141013  1:13:28  InnoDB: Waiting  for  the background threads to start
141013  1:13:29 InnoDB: 5.5.33 started; log sequence number 1006647152
17:13:29 UTC - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help
di141013 01:13:29 mysqld_safe mysqld from pid  file  /mydata/data/fisheye .pid ended

未发现明显性错误提示,所以手动创建一个pid文件试试

1
[root@fisheye data] # touch /mydata/data/fisheye.pi

再进行重启服务:

1
2
[root@fisheye data] # service mysql restart
ERROR 2002 (HY000): Can 't connect to local MySQL server through socket ' /tmp/mysql .sock' (2)

突然想到之前看过此类报错的文章,记得有可能是磁盘空间不足导致的mysql无法启动。

1
2
3
4
5
6
7
[root@fisheye data] # df -h
文件系统              容量  已用 可用 已用% 挂载点
/dev/sda1              9.5G  9.5G  0  100% /
/dev/sda4              5.5G  1.3G  4.0G  24%  /mnt/backup
/dev/mapper/IhuilianVG-IhuilianLV00
                        22G  4.2G   17G  20%  /var/www/app
tmpfs                 1.3G     0  1.3G   0%  /dev/shm

果然如此,下面罗列一些类似问题(无法启动)的解决思路:

1.可能是datadir目录存在的分区满了(df -h )

       解决方法:打开配置文件/etc/my.cnf,在[mysqld]节下重新指定数据目录(datadir),并将原来的数据目录迁移到重新制定的数据目录处

       关于迁移:(1)、cp或者tar的时候一定要把权限给带上,但是为防止意外建议再授权一次;(2)、数据比较大时一定要先压缩再迁移,保证完整性,特别是scp到其他机器时可能会超时所以一定要压缩(tar.gz);(3)、若是移动至另外的服务器一定要保证mysql版本一致。


2.可能是/mydata/data/fisheye.pid文件没有写的权限

      解决方法 :给予权限,执行 “chown -R mysql:mysql /mydata/data/”  然后重新启动mysqld!


3.可能进程里已经存在mysql进程

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


4.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。

       解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。


5.skip-federated字段问题(报错信息:[ERROR] /mydata/data/mysql/libexec/mysqld: unknown option '--skip-federated')

       解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。


6.selinux惹的祸,如果是centos系统,默认会开启selinux

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




本文转自 z永 51CTO博客,原文链接:http://blog.51cto.com/pangge/1564707

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
关系型数据库 MySQL Linux
Linux启动停止重启Mysql数据库针对各个版本的数据库
Linux启动停止重启Mysql数据库针对各个版本的数据库
10 0
|
3月前
|
关系型数据库 MySQL 数据库
MySQL数据库的启动/停止
MySQL数据库的启动/停止及查看状态
63 0
|
23小时前
|
关系型数据库 MySQL 数据库
一台MySQL数据库启动多个实例
一台MySQL数据库启动多个实例
|
3月前
|
关系型数据库 MySQL Linux
linux环境下查看mysql服务状态和重启命令
linux环境下查看mysql服务状态和重启命令
106 0
|
关系型数据库 MySQL Windows
Windows安装Mysql,服务无法启动,错误1053处理
在Windows7操作系统,部署mysql的时候, 无法启动Mysql服务 错误1053:服务没有及时响应启动或控制请求。 以下整理了处理的详细过程
906 0
Windows安装Mysql,服务无法启动,错误1053处理
|
SQL 关系型数据库 MySQL
MYSQL数据库常见配置问题
MYSQL数据库常见配置问题
|
SQL 关系型数据库 MySQL
MySQL强制重启失败后无法启动问题解决
本文目录 1. MySQL重启失败 2. 急中生智 3. 神奇的360任务管理器 4. 总结
602 0
MySQL强制重启失败后无法启动问题解决
Mysql5.7异常关机启动报错
早上发现测试环境的机器关机了,手动去机房启动服务器,登录后发现无法启动数据库
301 0
Mysql5.7异常关机启动报错
|
关系型数据库 MySQL 数据库
MySQL无法启动,报1045的解决方法
MySQL无法启动,报1045的解决方法 问题:当我打开 phpstudy时,想测试一下 mysql 是否可以连接成功,出现以下报错:  windows下,以上错误的解决方法,如下: 1. 找到配置文件 my.ini, 将其打开,可用记事本打开 2. 打开后,搜索 mysqld 关键字,找到后,在 mysqld下面添加下面一行代码,并保存退出。
3010 0

热门文章

最新文章