程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL 啟動服務報錯解決方案

MySQL 啟動服務報錯解決方案

編輯:MySQL綜合教程

MySQL 啟動服務報錯解決方案


概述     文章主要介紹因為啟動mysql服務報錯引發的問題,順帶擴充一些其它的知識點,當前版本是red hat 6,mysql 5.6。   目錄   概述 步驟 報錯的源頭 問題解決 問題分析 系統自動重啟服務 總結   步驟   報錯的源頭 問題解決   1.權限   報錯的源頭就是它了,一般這種問題首先會想到的就是權限問題,就是/var/lib/mysql該文件夾的權限 上圖可以看到mysql文件夾的用戶和組都是mysql且mysql有寫的權限,所以權限沒有問題。   2.進程   查看/var/lib/mysql目錄,發現沒有生存mysql.sock文件,說明mysql沒有啟動,也可以登入mysql來測試   查看進程ps -ef|grep mysql 發現存在mysql進程,原因就是它了,kill掉,kill -9 pid   再啟動mysql服務,service mysql start,我當前的mysql版本是5.6,在5.7版本啟動服務是service mysqld start,稍微有點差別。 查看mysql目錄,發現mysql.sock文件生成了   問題分析   還記得一開始的那個報錯嗎? 明明已經存在mysql進程的但是為什麼stop mysql服務提示找不到進程,主要的原因還是進程裡面存儲mysql的異進程,解決方法就是按照上面的kill掉這些進程,為什麼會產生這種進程呢?我這裡是我自己的操作失誤,服務器啟動的時候mysql自動已經啟動了,然後我還執行了一次service mysql start,導致了這個問題,這也是問題的由來,網上有很多文章是針對這個的解決方法但並沒有找出問題的由來,可能還會有其它原因導致這個問題,但是我這裡就是因為我重復啟動了服務,因為mysql5.7版本中mysql服務沒有自動重啟所以我經常會有重啟服務的習慣,但是在5.6版本mysql就是隨著系統自動啟動所以就無需再重啟服務了。   系統自動重啟服務   chkconfig命令   使用chkconfig命令查詢服務的重啟情況,命令:chkconfig --list servername,也可以單獨chkconfig --list查看所有   [0-6]分別代表linux系統的運行方式,0:停機,1:單用戶模式,2:不帶網絡的多用戶,3:不帶圖形界面的多用戶,4:沒有使用,5:帶圖形界面的模式x11也就是經常看到linux桌面(默認級別),6:重啟   可以使用chkconfig --level 級別 服務名 on/off方式來關閉和啟動服務   例如我們關閉mysql在linux2,3,4,5運行級別的自動啟動,   chkconfig --level 2345 mysql off   這裡有一篇關於自動啟動服務的文章總結的很好:概述     文章主要介紹因為啟動mysql服務報錯引發的問題,順帶擴充一些其它的知識點,當前版本是red hat 6,mysql 5.6。   目錄   概述 步驟 報錯的源頭 問題解決 問題分析 系統自動重啟服務 總結   步驟   報錯的源頭   問題解決   1.權限   報錯的源頭就是它了,一般這種問題首先會想到的就是權限問題,就是/var/lib/mysql該文件夾的權限   上圖可以看到mysql文件夾的用戶和組都是mysql且mysql有寫的權限,所以權限沒有問題。   2.進程   查看/var/lib/mysql目錄,發現沒有生存mysql.sock文件,說明mysql沒有啟動,也可以登入mysql來測試 查看進程ps -ef|grep mysql   發現存在mysql進程,原因就是它了,kill掉,kill -9 pid 再啟動mysql服務,service mysql start,我當前的mysql版本是5.6,在5.7版本啟動服務是service mysqld start,稍微有點差別。   查看mysql目錄,發現mysql.sock文件生成了 問題分析   還記得一開始的那個報錯嗎?   明明已經存在mysql進程的但是為什麼stop mysql服務提示找不到進程,主要的原因還是進程裡面存儲mysql的異進程,解決方法就是按照上面的kill掉這些進程,為什麼會產生這種進程呢?我這裡是我自己的操作失誤,服務器啟動的時候mysql自動已經啟動了,然後我還執行了一次service mysql start,導致了這個問題,這也是問題的由來,網上有很多文章是針對這個的解決方法但並沒有找出問題的由來,可能還會有其它原因導致這個問題,但是我這裡就是因為我重復啟動了服務,因為mysql5.7版本中mysql服務沒有自動重啟所以我經常會有重啟服務的習慣,但是在5.6版本mysql就是隨著系統自動啟動所以就無需再重啟服務了。   系統自動重啟服務   chkconfig命令   使用chkconfig命令查詢服務的重啟情況,命令:chkconfig --list servername,也可以單獨chkconfig --list查看所有 [0-6]分別代表linux系統的運行方式,0:停機,1:單用戶模式,2:不帶網絡的多用戶,3:不帶圖形界面的多用戶,4:沒有使用,5:帶圖形界面的模式x11也就是經常看到linux桌面(默認級別),6:重啟   可以使用chkconfig --level 級別 服務名 on/off方式來關閉和啟動服務   例如我們關閉mysql在linux2,3,4,5運行級別的自動啟動,   chkconfig --level 2345 mysql off   有一篇關於自動啟動服務的文章總結的很好:http://www.Bkjia.com/os/201301/185495.html   查看boot.log 日志   命令:cat /var/log/boot.log   boot.log記錄了啟動項的日志信息。 總結   文章主要是寫自己遇到問題發現問題找到問題的方法,順便擴充了一些系統自動啟動的信息。   查看boot.log 日志   命令:cat /var/log/boot.log   boot.log記錄了啟動項的日志信息。   總結   文章主要是寫自己遇到問題發現問題找到問題的方法,順便擴充了一些系統自動啟動的信息。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved