報錯起因
在CentOS7中安裝部署MySQL服務(wù),首次啟動服務(wù)時失敗報錯
Job for mysqld.service failed because the control process exited with error code.See “systemctl status mysqld.service” and “journal -xe” for details.
引起此報錯的原因不盡相同,所以建議先找到引起報錯的具體原因再針對性尋找解決方案
報錯信息告知可以使用"systemctl status mysqld.service" 和 "journal -xe"指令查看mysql狀態(tài)以及查看啟動失敗反饋的結(jié)果信息,但本機在查看此反饋信息時還是沒有找到具體的出錯原因。于是以本機遇到的問題為例提供了另一種解決方法。
先確認(rèn)了一下mysql服務(wù)的狀態(tài),未啟動成功
查找出錯具體原因
查看mysql報錯日志信息
本機是通過查看mysql日志信息找到了具體的出錯原因
cat /var/log/mysqld.log | grep ERROR #只查看具體的報錯日志,省略了其他類型的日志
"Bind on TCP/IP port: Address already in use
"
發(fā)現(xiàn)問題是因為mysql服務(wù)默認(rèn)使用的3306端口被占用,該問題可以通過兩種方法解決
解決方案
1. 結(jié)束其他進程對3306端口的占用
2. 修改mysql服務(wù)配置文件中的指定端口號,設(shè)置為另一個可用端口號
本機采用的第一種解決方式,也簡單說明一下第二種解決方式
方法一:結(jié)束進程對mysql默認(rèn)端口的占用
查看端口號占用情況
netstat -lnp|grep [端口號] #顯示指定端口號使用情況
netstat -ntlp #顯示所有端口使用情況
netstat -lnp|grep 3306
端口被進程pid為1974的進程占用,如果端口沒有被占用執(zhí)行查看指令則不會顯示任何內(nèi)容
終結(jié)占用進程
kill -9 [進程PID]
kill -9 1974 #本機端口是被PID為1974的進程占用
再次查看端口確認(rèn)進程已被殺掉
啟動成功問題解決
方法二:修改MySQL服務(wù)默認(rèn)端口號
修改配置文件
如果之前手動添加過mysql的配置文件,可以在自己添加的配置文件中修改端口號
通過指令mysql --help|grep 'my.cnf'
可以查看到配置文件的適用順序,越往前優(yōu)先級越高,/etc/my.cnf
是默認(rèn)存在也是優(yōu)先級最高的配置文件,本機沒有添加其他配置文件,所以直接修改默認(rèn)配置文件
vi /etc/my.cnf #修改配置文件
MySQL配置文件中沒有端口號設(shè)置會默認(rèn)使用3306端口,添加端口號設(shè)置port=[端口號]
設(shè)置的端口號要確認(rèn)沒有再被占用,可用通過前面提到的方法查看端口使用情況文章來源:http://www.zghlxwxcb.cn/news/detail-465504.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-465504.html
重啟MySQL服務(wù)
systemctl restart mysqld
到了這里,關(guān)于centOS7 Mysql啟動失敗報錯Job for mysqld.service failed because the control process exited with error code.的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!