ubuntu下磁盘空间不足导致mysql无法启动的解决方法

 更新时间:2017年03月01日 08:40:16   作者:马富天  
昨天又遇到了MySQL数据库无法重启的问题,还以为是权限的原因,后来发现提示是因为磁盘空间不足导致的,通过查找相关资料得以解决了,所以下面这篇文章主要介绍了ubuntu下磁盘空间不足导致mysql无法启动的解决方法,需要的朋友可以参考下。

前言

最近在数据库的一张表添加两个字段,后来提示什么磁盘空间不足什么什么的,后来数据库就断开连接了,之后就一直连接不上去后来,最后经过思考终于解决了这个问题,这一经历下来真是心惊胆战,本文作为记录一下磁盘空间不足导致的 mysql 无法启动的解决办法。

方法如下

操作系统:ubuntu,磁盘空间不足导致的 mysql 无法启动,会造成如下问题:

root@iZ28z558vv0Z:/etc/mysql# mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
root@iZ28z558vv0Z:/b# service mysql start
start: Job failed to start
root@iZ28z558vv0Z:/var/lib# service mysqld start
mysqld: unrecognized service

解决办法:找到 mysql 的配置文件 my.cnf:

root@iZ28z558vv0Z:/etc/mysql# ls
conf.d debian.cnf debian-start my.cnf
root@iZ28z558vv0Z:/etc/mysql# vi my.cnf

其中文件中的 datadir 这一项显示 /var/lib/mysql

[mysqld]
#
# * Basic Settings
#
user   = mysql
pid-file  = /var/run/mysqld/mysqld.pid
socket   = /var/run/mysqld/mysqld.sock
port   = 3306
basedir   = /usr
datadir   = /var/lib/mysql
tmpdir   = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking

因为是磁盘空间不足,所以我们需要查看 mysql 保存数据的所在位置,datadir 或 tmpdir 这两项所在磁盘空间的使用情况,查看 datadir 所在磁盘空间的使用情况:

root@iZ28z558vv0Z:/var# df /var
Filesystem  1K-blocks  Used Available Use% Mounted on
/dev/xvda1  41151808 39038392   0 100% /

由上可以看出明显磁盘空间可用率是0,这就是导致 mysql 无法启动的原因了。删去 /var 目录下的其它文件,腾出磁盘空间,即可解决问题,然后重启 mysql 服务。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

  • MySQL对中文进行排序详解及实例

    MySQL对中文进行排序详解及实例

    这篇文章主要介绍了MySQL对中文进行排序详解及实例的相关资料,需要的朋友可以参考下
    2017-05-05
  • 浅谈mysql增加索引不生效的几种情况

    浅谈mysql增加索引不生效的几种情况

    增加索引就是增加一个索引文件,但是在使用过程中哪些情况增加索引无法达到预期的效果呢?感兴趣的小伙伴们可以参考一下
    2021-06-06
  • 不使用MySQL数据库的五个给力理由解析

    不使用MySQL数据库的五个给力理由解析

    众所周知,MySQL数据库虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。
    2011-03-03
  • 详解如何在SpringBoot中配置MySQL数据库的连接数

    详解如何在SpringBoot中配置MySQL数据库的连接数

    在Spring Boot中配置MySQL数据库连接数通常涉及到两个主要的配置,数据源配置和连接池配置,本文给大家介绍了Spring Boot项目如何配置MySQL数据库连接数的详细步骤,并通过代码示例讲解的非常详细,需要的朋友可以参考下
    2024-06-06
  • MySQL中字段的实际长度的实现示例代码

    MySQL中字段的实际长度的实现示例代码

    MySQL字段的存储长度不仅取决于数据类型,还受字符编码和存储内容的影响,CHAR和VARCHAR字段可以使用LENGTH()和CHAR_LENGTH()函数获取长度信息,下面就来具体介绍一下
    2024-09-09
  • MySQL执行状态的查看与分析

    MySQL执行状态的查看与分析

    今天小编就为大家分享一篇关于MySQL执行状态的查看与分析,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • MySQL因配置过大内存导致无法启动的解决方法

    MySQL因配置过大内存导致无法启动的解决方法

    这篇文章主要给大家介绍了关于MySQL因配置过大内存导致无法启动的解决方法,文中给出了详细的解决示例代码,对遇到这个问题的朋友们具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • MySQL 5.7安装后默认登录密码的查看方法

    MySQL 5.7安装后默认登录密码的查看方法

    许多朋友安装MySQL 5.7之后不知道默认登录密码在哪里查看,本文小编将通过代码示例和图文结合的方式给大家介绍MySQL 5.7安装后默认登录密码的查看方法,需要的朋友可以参考下
    2023-12-12
  • 在idea中如何操作MySQL数据库

    在idea中如何操作MySQL数据库

    这篇文章主要介绍了在idea中如何操作MySQL数据库问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Mysql报Table 'mysql.user' doesn't exist问题的解决方法

    Mysql报Table 'mysql.user' doesn't exist问题的解

    这篇文章主要给大家介绍了关于Mysql报Table 'mysql.user' doesn't exist问题的解决方法,初学者可能会遇到这个问题,文中通过图文将解决方法介绍的非常详细,需要的朋友可以参考下
    2022-05-05

最新评论