1. 程式人生 > 資料庫 >ubuntu下磁碟空間不足導致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 服務。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。