寶塔面板mysql無法啟動(dòng)問題的分析和解決
寶塔面板無法啟動(dòng)的問題和解決
如果你的寶塔里面的mysql無法啟動(dòng)了,請先看是不是以下的配置問題
1.是不是你的3306端口被占用了導(dǎo)致mysql無法啟動(dòng)
2.是不是磁盤空間不足導(dǎo)致的無法啟動(dòng) 如果都不是這些問題再繼續(xù)向下看
常見問題:
1、Mysql安裝好后或遷移文件后無法啟動(dòng)
2、Mysql異常關(guān)閉后無法啟動(dòng)
3、Mysql停止后無法啟動(dòng)
一、Mysql安裝好后或遷移文件后無法啟動(dòng)
在Mysql剛剛安裝好或者遷移文件后無法啟動(dòng)我們一般先檢查Mysql的數(shù)據(jù)目錄所有者是否mysql用戶。
例如我們寶塔環(huán)境是:
- Mysql數(shù)據(jù)目錄: /www/server/data
- Mysql程序目錄:/www/server/mysql
- Mysql主配置文件:/etc/my.cnf
首先檢查硬盤分區(qū)使用率是否已經(jīng)滿了 執(zhí)行下面的命令查看分區(qū)容量使用率
df -h
執(zhí)行下面的命令查看分區(qū)inode使用率
df -i
使用ll命令查看目錄詳細(xì)信息
[root@test server]# ll /www/server/ total 24 drwxr-x--- 6 root root 4096 Oct 30 17:51 data drwx--x--x 14 root root 182 Oct 16 18:01 docker drwxrwxr-x 12 root root 326 Oct 24 18:06 mysql drw-------. 14 root root 4096 Oct 24 18:06 panel
可以看到data目錄所有者是root,這時(shí)候啟動(dòng)mysql報(bào)錯(cuò)如下
[root@test server]# /etc/init.d/mysqld start Starting MySQL. ERROR! The server quit without updating PID file (/www/server/data/test.com.pid).
我們先修改該目錄的所有者為mysql
chown -R mysql.mysql data
啟動(dòng)數(shù)據(jù)庫
/etc/init.d/mysqld start
可以看到已經(jīng)啟動(dòng)成功了
[root@test server]# /etc/init.d/mysqld startStarting MySQL... SUCCESS!
還不行檢查你的selinux狀態(tài)
getenforce
如果返回值不值disable
運(yùn)行命令暫時(shí)停止selinux
setenforce 0
再嘗試啟動(dòng)
二、Mysql異常關(guān)閉后無法啟動(dòng)
Mysql異常關(guān)閉是我們經(jīng)常遇到的情況,重啟服務(wù)器時(shí)沒有預(yù)先關(guān)閉mysql,服務(wù)器斷電,使用kill命令殺死m(xù)ysql進(jìn)程等都屬于異常關(guān)閉,異常關(guān)閉往往會(huì)帶來一些不可預(yù)料的后果。
一般情況下異常關(guān)閉會(huì)導(dǎo)致二進(jìn)制日志文件損壞
執(zhí)行
rm -f /www/server/data/ib_logfile0 rm -f /www/server/data/ib_logfile1
刪除日志后再嘗試啟動(dòng)
遇到錯(cuò)誤 Another MySQL daemon already running with the same unix socket 時(shí)
可以嘗試刪除sock文件后再啟動(dòng)
rm -f /tmp/mysql.sock* rm -f /tmp/mysqlx.sock*
遇到錯(cuò)誤 [ERROR] InnoDB: Cannot allocate memory for the buffer pool 時(shí)
表示當(dāng)前mysql啟動(dòng)需要的內(nèi)存不夠,我們需要調(diào)整
innodb_buffer_pool_size key_buffer_size
的內(nèi)存
三、Mysql停止后無法啟動(dòng)
Mysql正常停止后無法啟動(dòng)的原因
1.顯示停止成功實(shí)際停止失敗,有殘留進(jìn)程,我們可以用ps來檢查
ps -ef|grep mysql
2.磁盤空間滿了導(dǎo)致mysql無法啟動(dòng)
3.有時(shí)手動(dòng)刪除了binlog日志重啟mysql也會(huì)導(dǎo)致無法啟動(dòng),在錯(cuò)誤日志里可以找到
File ‘./mysql-bin.000001’ not found 字樣
解決方法:
注釋主配置文件的配置
找到
log-bin=mysql-bin
改為
#log-bin=mysql-bin
或者清空
mysql-bin.index
以下兩種解決方案,根據(jù)自身情況自選嘗試 1,通過改etc/init.d/mysqld解決
然后還有一種是我個(gè)人通過查帖子解決這個(gè)問題的方法首先
1.第一步是先找到etc/init.d/mysqld這個(gè)文件然后打開找到start部分

剛打開沒有藍(lán)色框的這一串代碼,為其加上然后保存關(guān)閉
2.打開寶塔終端直接輸入service mysqld start這行代碼讓其mysql進(jìn)行運(yùn)行
3.然后再去看mysql就已經(jīng)開始運(yùn)行了
2通過刪除一個(gè)文件解決
有些無法啟動(dòng)的mysql可能是自己并沒有啟動(dòng)主從復(fù)制,但是在/www/server/data下莫名其妙多出來了一個(gè)mysql-bin.index文件,這時(shí)候把這個(gè)文件刪掉然后再啟動(dòng)也可以啟動(dòng)成功,但是我的用這個(gè)就不行,大家根據(jù)自己的情況選擇解決方案
最后還是要說不要在mysql性能調(diào)整的時(shí)候進(jìn)行重啟或者關(guān)閉都很容易出錯(cuò)的
總結(jié)
到此這篇關(guān)于寶塔面板mysql無法啟動(dòng)問題的文章就介紹到這了,更多相關(guān)寶塔面板mysql無法啟動(dòng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解
這篇文章主要介紹了mysql8.0.19基礎(chǔ)數(shù)據(jù)類型的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2020-03-03
MySQL錯(cuò)誤:You can‘t specify target table&n
在編寫MySQL的UPDATE或DELETE語句時(shí),如果子查詢中直接引用了要操作的目標(biāo)表,可能會(huì)遇到一個(gè)常見的錯(cuò)誤:You can’t specify target table ‘xxx’ for update in FROM clause,這個(gè)錯(cuò)誤讓許多開發(fā)者感到困惑,本文將深入分析其原因,并提供多種解決方案,2025-02-02
show engine innodb status顯示信息不全如何解決
執(zhí)行 show engine innodb status\G 時(shí),顯示的信息不全,DEADLOCK相關(guān)信息太多,后面的都沒了2012-11-11
MySQL 自定義函數(shù)CREATE FUNCTION示例
本節(jié)主要介紹了MySQL 自定義函數(shù)CREATE FUNCTION,下面是示例代碼,需要的朋友可以參考下2014-07-07
查看修改mysql編碼方式讓它支持中文(gbk或者utf8)
MySQL的默認(rèn)編碼是Latin1,不支持中文,要支持中文需要把數(shù)據(jù)庫的默認(rèn)編碼修改為gbk或者utf8,真的是很麻煩啊,不過本文提供了詳細(xì)的修改教程,感興趣的你可不要走開啊,希望本文對你有所幫助2013-01-01
Mysql中使用count加條件統(tǒng)計(jì)的實(shí)現(xiàn)示例
本文主要介紹了Mysql中使用count加條件統(tǒng)計(jì)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
MySQL中的LOCATE和POSITION函數(shù)使用方法
不常用:MySQL中的LOCATE和POSITION函數(shù)2010-02-02

