前言
最近在數(shù)據(jù)庫(kù)的一張表添加兩個(gè)字段,后來(lái)提示什么磁盤空間不足什么什么的,后來(lái)數(shù)據(jù)庫(kù)就斷開連接了,之后就一直連接不上去后來(lái),最后經(jīng)過(guò)思考終于解決了這個(gè)問(wèn)題,這一經(jīng)歷下來(lái)真是心驚膽戰(zhàn),本文作為記錄一下磁盤空間不足導(dǎo)致的 mysql 無(wú)法啟動(dòng)的解決辦法。
方法如下
操作系統(tǒng):ubuntu,磁盤空間不足導(dǎo)致的 mysql 無(wú)法啟動(dòng),會(huì)造成如下問(wèn)題:
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 這一項(xiàng)顯示 /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
因?yàn)槭谴疟P空間不足,所以我們需要查看 mysql 保存數(shù)據(jù)的所在位置,datadir 或 tmpdir 這兩項(xiàng)所在磁盤空間的使用情況,查看 datadir 所在磁盤空間的使用情況:
root@iZ28z558vv0Z:/var# df /var
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/xvda1 41151808 39038392 0 100% /
由上可以看出明顯磁盤空間可用率是0,這就是導(dǎo)致 mysql 無(wú)法啟動(dòng)的原因了。刪去 /var 目錄下的其它文件,騰出磁盤空間,即可解決問(wèn)題,然后重啟 mysql 服務(wù)。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。
您可能感興趣的文章:- MySQL 利用frm文件和ibd文件恢復(fù)表數(shù)據(jù)
- MySQL之導(dǎo)出整個(gè)及單個(gè)表數(shù)據(jù)的操作
- 解決MySQL數(shù)據(jù)庫(kù)意外崩潰導(dǎo)致表數(shù)據(jù)文件損壞無(wú)法啟動(dòng)的問(wèn)題
- MySQL Delete 刪數(shù)據(jù)后磁盤空間未釋放的原因
- Mysql存儲(chǔ)引擎MyISAM的常見(jiàn)問(wèn)題(表?yè)p壞、無(wú)法訪問(wèn)、磁盤空間不足)
- lnmp下如何關(guān)閉Mysql日志保護(hù)磁盤空間
- 幾個(gè)縮減MySQL以節(jié)省磁盤空間的建議
- Mysql InnoDB刪除數(shù)據(jù)后釋放磁盤空間的方法
- 為什么MySQL 刪除表數(shù)據(jù) 磁盤空間還一直被占用