解決Docker磁盤空間不足導(dǎo)致MySQL啟動(dòng)失敗問(wèn)題

這個(gè)錯(cuò)誤表明 Docker 容器的磁盤空間已滿,具體是 MySQL 的臨時(shí)表空間文件(ibtmp1)無(wú)法繼續(xù)增長(zhǎng)。
以下是解決方案:
立即解決方案
1. 清理 Docker 磁盤空間
# 查看 Docker 磁盤使用情況 docker system df # 清理所有未使用的資源(容器、鏡像、網(wǎng)絡(luò)、構(gòu)建緩存) docker system prune -a # 如果有卷的話,也可以清理未使用的卷 docker volume prune

2. 刪除特定的容器和關(guān)聯(lián)資源
# 停止并刪除 MySQL 容器 docker stop mysql docker rm mysql # 刪除可能過(guò)大的卷(謹(jǐn)慎操作,確保不要?jiǎng)h除重要數(shù)據(jù)) docker volume ls docker volume rm [volume_name]
3. 調(diào)整 Docker 的存儲(chǔ)位置或限制
# 查看 Docker 根目錄大小 du -sh /var/lib/docker/ # 如果有大文件,可以手動(dòng)清理一些日志文件 # 通常在 /var/lib/docker/containers/[container_id]/
長(zhǎng)期解決方案
1. 啟動(dòng) MySQL 時(shí)限制臨時(shí)表大小
docker run --name mysql -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=123456 \ -e MYSQL_INNODB_TEMP_DATA_FILE_PATH=ibtmp1:128M:autoextend:max:1G \ -d mysql:5.7 \ --innodb_temp_data_file_path=ibtmp1:128M:autoextend:max:1G
2. 使用數(shù)據(jù)卷持久化存儲(chǔ)
# 創(chuàng)建專門的數(shù)據(jù)卷 docker volume create mysql_data docker run --name mysql -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=123456 \ -v mysql_data:/var/lib/mysql \ -d mysql:5.7
3. 監(jiān)控磁盤空間
# 查看系統(tǒng)磁盤空間 df -h # 查看 Docker 容器磁盤使用 docker ps -s
緊急恢復(fù)步驟
首先清理 Docker 空間:
docker system prune -a docker volume prune
重新啟動(dòng) MySQL 容器:
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
如果問(wèn)題依舊,檢查宿主機(jī)磁盤空間:
df -h # 如果宿主機(jī)磁盤滿,需要清理系統(tǒng)文件
這個(gè)錯(cuò)誤通常是由于 Docker 的存儲(chǔ)驅(qū)動(dòng)積累了太多數(shù)據(jù)導(dǎo)致的,定期執(zhí)行 docker system prune 可以預(yù)防此類問(wèn)題。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Docker?創(chuàng)建centos容器集群并實(shí)現(xiàn)遠(yuǎn)程登錄功能
這篇文章主要介紹了Docker?創(chuàng)建centos容器集群并實(shí)現(xiàn)遠(yuǎn)程登錄,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
在 Superset Docker 容器中安裝 MySQL 驅(qū)動(dòng)的方法
本文介紹了在Apache Superset Docker容器中安裝MySQL驅(qū)動(dòng)的方法,將詳細(xì)介紹兩種2026-04-04
Docker 部署方式(Docker run 和 Docker Compose)下,MySQL 驅(qū)動(dòng)的完整安裝流程,同時(shí)兼顧 Apache Doris
驅(qū)動(dòng)安裝(適配多數(shù)據(jù)源需求),并提供數(shù)據(jù)庫(kù)配置方法和常見注意事項(xiàng)
dockerfile報(bào)錯(cuò)“/bin/sh -c yum -y install“問(wèn)
文章主要討論了解決Docker容器安裝vim時(shí)出現(xiàn)錯(cuò)誤的問(wèn)題,指出是容器版本不兼容導(dǎo)致,建議使用Centos 7版本的容器,提供了一種解決方案,并鼓勵(lì)讀者參考此經(jīng)驗(yàn)2026-05-05
一文教你如何通過(guò) Docker 快速搭建各種測(cè)試環(huán)境
這篇文章主要介紹了一文教你如何通過(guò) Docker 快速搭建各種測(cè)試環(huán)境,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

