寶塔面板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)文章
當(dāng)面試官問mysql中char與varchar的區(qū)別
這篇文章主要以聊天形式圖片的添加,將面試官面試真實(shí)場景體現(xiàn)出來,好奇的朋友不要錯(cuò)過奧2021-08-08MySQL數(shù)據(jù)遷移使用MySQLdump命令
今天小編就為大家分享一篇關(guān)于MySQL數(shù)據(jù)遷移使用MySQLdump命令,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10mySQL中LEN()與DATALENGTH()的區(qū)別
LEN返回指定字符串表達(dá)式的字符數(shù),其中不包含尾隨空格。DATALENGTH返回用于表示任何表達(dá)式的字節(jié)數(shù)。2011-03-03MySQL利用索引優(yōu)化ORDER BY排序語句的方法
這篇文章主要介紹了MySQL利用索引優(yōu)化ORDER BY排序語句的方法,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下2020-10-10MySQL 數(shù)據(jù)庫跨操作系統(tǒng)的最快遷移方法
原始的是Windows 2003下的32位的MySQL數(shù)據(jù)庫, 新的服務(wù)器是Sun的64位的小型機(jī),64位的MySQL數(shù)據(jù)庫。2009-02-02深入解析MySQL的事務(wù)隔離及其對性能產(chǎn)生的影響
這篇文章主要介紹了MySQL的事務(wù)隔離及其對性能產(chǎn)生的影響,在MySQL的優(yōu)化方面具有一定的借鑒意義,需要的朋友可以參考下2015-12-12