針對服務器磁盤爆滿,MySql數據庫始終無法啟動,怎么解決

5dfc140498d3d6f2bab2a5e604775fbd.jpeg

(點擊即可進入聊天助手)

很多站長在運營網站的過程當中都會遇到一個問題,就是網站突然無法打開,數據一直無法啟動

無論是強制重啟還是,刪除網站內的所有應用,數據庫一直無法啟動

這個時候,就需要常見的運維手段了,需要對服務器后臺各個資源,進行逐一排查

如果一看到磁盤容量拉滿,也并不是網絡帶寬問題,盲目的去花錢升級硬盤容量,這是不可取的,也是個無底洞,找到具體的問題,給解決才是上上之策

042da4609bb72d6681f990ff9c5308f4.png

解決Linux服務器上MySQL數據庫無法啟動的問題

  1. 查看數據庫錯誤日志

sudo?less?/var/log/mysql/error.log
  1. 檢查MySQL服務狀態:

使用systemctl檢查MySQL服務的狀態,以確定是否有錯誤信息

sudo?systemctl?status?mysql.service
  1. 檢查配置文件

確保/etc/my.cnf或/etc/mysql/my.cnf(路徑可能因發行版而異)配置文件中沒有錯誤

  1. 檢查磁盤空間(很多時候就是這個原因)

確保服務器上有足夠的磁盤空間,先使用df -h 查看磁盤容量,然后再使用du -sh *,查看文件大小,找到文件異常大的,然后使用rm -rf 文件名,刪除掉騰出資源空間

df?-h
  1. 檢查權限問題:

確保MySQL相關目錄和文件的權限設置正確。

  1. 檢查端口占用:

確保MySQL默認端口3306沒有被其他進程占用

sudo?netstat?-tulnp?|?grep?3306
  1. 嘗試安全模式啟動:

如果常規啟動失敗,可以嘗試以安全模式啟動MySQL

sudo?mysqld_safe?&
  1. 修復安裝:

如果懷疑數據庫損壞,可以嘗試使用MySQL的修復工具

sudo?mysql_upgrade?-u?root?-p
  1. 重新配置/初始化:

如果以上方法都不能解決問題,可能需要重新配置或初始化數據庫

sudo?mysqld?--initialize
sudo?systemctl?start?mysql.service

linux服務器MySql數據庫始終無法啟動 ? ?解決Linux服務器上MySQL數據庫無法啟動的問題,通常需要檢查以下幾個方面:

查看錯誤日志:

使用grep命令查看MySQL的錯誤日志,通常位于/var/log/mysql/error.log。

sudo grep?'temporary'?/var/log/mysql/error.log

檢查MySQL服務狀態:

使用systemctl檢查MySQL服務的狀態,以確定是否有錯誤信息。

sudo?systemctl?status?mysql.service

檢查配置文件:

確保/etc/my.cnf或/etc/mysql/my.cnf(路徑可能因發行版而異)配置文件中沒有錯誤。

檢查磁盤空間:

確保服務器上有足夠的磁盤空間。

df -h

檢查權限問題:

確保MySQL相關目錄和文件的權限設置正確。

檢查端口占用:

確保MySQL默認端口3306沒有被其他進程占用。

sudo netstat -tulnp | grep?3306

嘗試安全模式啟動:

如果常規啟動失敗,可以嘗試以安全模式啟動MySQL。

sudo?mysqld_safe &

修復安裝:

如果懷疑數據庫損壞,可以嘗試使用MySQL的修復工具。

sudo?mysql_upgrade -u root -p

重新配置/初始化:

如果以上方法都不能解決問題,可能需要重新配置或初始化數據庫。

sudo mysqld --initialize sudo systemctl start mysql.service
  1. 查看系統日志:

查看系統日志,如/var/log/syslog或使用journalctl,以獲取可能導致MySQL啟動失敗的更多信息。

sudo?journalctl?-u?mysql.service

下面介紹一個,磁盤空間爆滿,即使刪除服務器內的所有應用,數據庫依舊無法啟動

進入服務器根目錄查看磁盤容量

遠程登陸服務器,進入服務器根目錄

cd?/

使用df -h, 命令查看服務器下資源各個磁盤的容量情況

如果你發現某個文件目錄下,占用磁盤空間特別大,那就是這個磁盤該清理了的

Filesystem??????Size??Used?Avail?Use%?Mounted?on
tmpfs???????????593M??972K??592M???1%?/run
/dev/vda2???????118G???117G???99G??98%?/
tmpfs???????????2.9G??8.0K??2.9G???1%?/dev/shm
tmpfs???????????5.0M?????0??5.0M???0%?/run/lock
tmpfs???????????593M??4.0K??593M???1%?/run/user/0

此刻,說明/dev/vda2的資源已經滿了,導致數據庫無法啟動的根本原因就在這里

所以需要刪除一些占用硬盤資源大的東西

使用"du -sh *"查看當前目錄下每一個的目錄和文件的大小匯總

0???????bin
242M????boot
8.0K????dev
21M?????etc
184M????home
0???????lib
0???????lib32
0???????lib64
0???????libx32
16K?????lost+found
4.0K????media
4.0K????mnt
4.0K????opt
8.0K????patch
du:?cannot?access?'proc/25809/task/25809/fd/4':?No?such?file?or?directory
du:?cannot?access?'proc/25809/task/25809/fdinfo/4':?No?such?file?or?directory
du:?cannot?access?'proc/25809/fd/3':?No?such?file?or?directory
du:?cannot?access?'proc/25809/fdinfo/3':?No?such?file?or?directory
0???????proc
30M?????root
976K????run
0???????sbin
1.3G????snap
4.0K????srv
0???????sys
1.3M????tmp
3.9G????usr
5.1G????var
4.1G????www

然后你看哪個文件占用內存特別大,然后就進入哪個目錄去刪掉的

一般來說,幾個G的,不算太大,但是某個目錄文件超過硬盤的90%,那這個目錄肯定需要騰出資源來

比如:我的是,www這個目錄,之前是占用了110多個G,這個目錄主要是存放服務器一些資源的

進入哪個目錄,就用du -sh *,這個命令查看各個文件的大小

進入/www/server/,發現是php某個版本占用硬盤資源非常大,發現php版本,70占用硬盤空間達到100多個G,把它刪掉就可以了的

使用命令rm -rf 70,刪除,然后重啟服務器就可以了的

你只要看哪個目錄占用空間非常大,繼續使用cd命令進入相應的目錄,繼續使用du命令進行查看,然后刪除一下沒用的文件,或者把它掛載到其他分區

總結

服務器內,不要隨意的去安裝各種php版本,它是非常占用磁盤空間的,有些應用程序非常吃硬盤,網站每運行一分鐘,不僅會產生日志,緩存,還有可能會產生一些其他的文件,時間一久就會影響磁盤,如果積累到一定程度,就會影響服務器的運行速度

選擇合適的php版本,因網站程序而異,不可千篇一律,得適配程序的,不可胡亂安裝的,否則會導致一些奇怪的問題,嚴重會影響業務

富爸爸情商課

2025-01-10

f4fe517968ebfe3b55f61a8ca0d9c674.jpeg

理解人性

2025-01-09

30e35ab3aec88a6dfb91ddae5eff14ee.jpeg

金錢的藝術

2025-01-08

3bf1948e89dd5050eb5c55e9b3ff8497.jpeg

a4d3221e870b6765c090373528afeb95.png

點擊左下角查看更多

bcf12740fed791f3486b091a9bf0a047.gif

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/65903.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/65903.shtml
英文地址,請注明出處:http://en.pswp.cn/web/65903.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

高性能現代PHP全棧框架 Spiral

概述 Spiral Framework 誕生于現實世界的軟件開發項目是一個現代 PHP 框架,旨在為更快、更清潔、更卓越的軟件開發提供動力。 特性 高性能 由于其設計以及復雜精密的應用服務器,Spiral Framework框架在不影響代碼質量以及與常用庫的兼容性的情況下&a…

【面試題】Spring/SpringBoot部分[2025/1/6 ~ 2025/1/12]

Spring/SpringBoot部分[2025/1/6 ~ 2025/1/12] 1. 說說 Spring 啟動過程?2. 說說 Springboot 的啟動流程?3. 你了解的 Spring 都用到哪些設計模式?4. Spring 有哪幾種事務傳播行為?5. SpringBoot 是如何實現自動配置的?6. Spring…

【機器學習:十八、更高級的神經網絡概念】

1. 梯度下降法的改進:Adam算法 1.1 Adam算法簡介 Adam(Adaptive Moment Estimation)是一種優化算法,結合了動量梯度下降和 RMSProp 的優點,在處理稀疏梯度和高維空間優化時表現尤為出色。其核心在于動態調整每個參數…

計算機網絡之---VPN與隧道協議

VPN與隧道協議 VPN(虛擬專用網絡)和隧道協議是現代網絡安全技術的重要組成部分,它們主要用于在不安全的公共網絡(如互聯網)上建立一個安全的私密網絡連接。VPN通過加密通信和認證機制,確保數據的隱私性和完…

【STM32-學習筆記-6-】DMA

文章目錄 DMAⅠ、DMA框圖Ⅱ、DMA基本結構Ⅲ、不同外設的DMA請求Ⅳ、DMA函數Ⅴ、DMA_InitTypeDef結構體參數①、DMA_PeripheralBaseAddr②、DMA_PeripheralDataSize③、DMA_PeripheralInc④、DMA_MemoryBaseAddr⑤、DMA_MemoryDataSize⑥、DMA_MemoryInc⑦、DMA_DIR⑧、DMA_Buff…

SQL Server中可以通過擴展事件來自動抓取阻塞

在SQL Server中可以通過擴展事件來自動抓取阻塞,以下是詳細流程: 開啟阻塞跟蹤配置: ? 執行以下SQL語句來啟用相關配置: EXEC sp_configureshow advanced options, 1; RECONFIGURE; EXEC sp_configure blocked process thresh…

DNS解析域名簡記

域名通常是由: 權威域名.頂級域名.根域名組成的。 從左往右,級別依次升高,這和外國人從小范圍到大范圍的說話習慣相關。(我們自己是更習慣先說大范圍再說小范圍,如XX省XX市XX區XX路) DNS解析域名時,會先查…

【爬蟲】單個網站鏈接爬取文獻數據:標題、摘要、作者等信息

源碼鏈接: https://github.com/Niceeggplant/Single—Site-Crawler.git 一、項目概述 從指定網頁中提取文章關鍵信息的工具。通過輸入文章的 URL,程序將自動抓取網頁內容 二、技術選型與原理 requests 庫:這是 Python 中用于發送 HTTP 請求…

關于掃描模型 拓撲 和 傳遞貼圖工作流筆記

關于MAYA拓撲和傳遞貼圖的操作筆記 一、拓撲低模: 1、拓撲工作區位置: 1、準備出 目標 高模。 (高模的狀態如上 ↑ )。 2、打開頂點吸附,和建模工具區,選擇四邊形繪制. 2、拓撲快捷鍵使…

解決無法遠程管理Windows Server服務器核心安裝

問題 有時,人們會為了節省運算資源,例如運行Hyper-V虛擬機,而選擇Windows Server核心安裝,即無圖形化界面。這時,我們就只能通過Powershell命令對其進行操控,或為了獲得圖形化界面而使用遠程服務器管理工具…

SQL HAVING 子句深入解析

SQL HAVING 子句深入解析 介紹 SQL(Structured Query Language)是一種用于管理關系數據庫管理系統的標準編程語言。在SQL中,HAVING子句是與GROUP BY子句一起使用的,用于篩選分組后的數據。它根據聚合函數的結果對組進行條件過濾…

【計算機網絡】lab7 TCP協議

🌈 個人主頁:十二月的貓-CSDN博客 🔥 系列專欄: 🏀計算機網絡_十二月的貓的博客-CSDN博客 💪🏻 十二月的寒冬阻擋不了春天的腳步,十二點的黑夜遮蔽不住黎明的曙光 目錄 1. 實驗目的…

JavaRestClient 客戶端初始化+索引庫操作

1. 介紹 ES官方提供了各種不同語言的客戶端,用來操作ES。這些客戶端的本質就是組裝DSL語句,通過http請求發送給ES。 Elasticsearch目前最新版本是8.0,其java客戶端有很大變化。不過大多數企業使用的還是8以下版本 2. 客戶端初始化 在elastic…

【JVM-2.2】使用JConsole監控和管理Java應用程序:從入門到精通

在Java應用程序的開發和運維過程中,監控和管理應用程序的性能和資源使用情況是非常重要的。JConsole是Java Development Kit(JDK)自帶的一款圖形化監控工具,它可以幫助開發者實時監控Java應用程序的內存、線程、類加載以及垃圾回收…

基于html5實現音樂錄音播放動畫源碼

源碼介紹 基于html5實現音樂錄音播放動畫源碼是一款類似Shazam的UI,點擊按鈕后,會變成為一個監聽按鈕。旁邊會有音符飛入這個監聽按鈕,最后轉換成一個音樂播放器。 效果預覽 源碼獲取 基于html5實現音樂錄音播放動畫源碼

《自動駕駛與機器人中的SLAM技術》ch1:自動駕駛

目錄 1.1 自動駕駛技術 1.2 自動駕駛中的定位與地圖 1.1 自動駕駛技術 1.2 自動駕駛中的定位與地圖 L2 在技術實現上會更傾向于實時感知,乃至可以使用感知結果直接構建鳥瞰圖(bird eye view, BEV),而 L4 則依賴離線地圖。 高精地…

抖音矩陣是什么

抖音矩陣是指在同一品牌或個人IP下,通過創建多個不同定位的抖音賬號(如主號、副號、子號等),形成一個有機的整體,以實現多維度、多層次的內容覆蓋和用戶互動。以下是關于抖音矩陣的詳細介紹: 抖音矩陣的類…

【開發日記】Docker修改國內鏡像源

1、問題: docker pull鏡像時提示以下內容: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)2、解決 ①…

Centos7 解決Maven scope=system依賴jar包沒有打包到啟動jar包中的問題(OpenCV-4.10)

最近項目中遇到問題,OpenCV的Jar包在程序打包后,找不到相關的類,比如MAT,這個時候懷疑OpenCV_4.10的Jar沒有和應用程序一起打包,后面排查到確實是沒有打包進去,特此記錄,便于日后查閱。 <!-- 加載lib目錄下的opencv包 --> <dependency><groupId>org…

【后端面試總結】Golang可能的內存泄漏場景及應對策略

Golang可能的內存泄漏場景及應對策略 一、引言 Golang作為一種高性能、并發友好的編程語言&#xff0c;其內置的垃圾回收機制極大地簡化了內存管理。然而&#xff0c;這并不意味著開發者可以完全忽視內存泄漏問題。在實際開發中&#xff0c;由于不當的資源管理、循環引用、以…