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

linux下mysql服務無法啟動

編輯:MySQL綜合教程

linux下mysql 無法啟動的原因很多,pid文件不存在、sock文件權限問題、甚至包括服務器空間占滿等下面我來給大家介紹解決mysql服務無法啟動一些方法。

具體解決方法流程如下

1、刪除mysql的所有pid進程

2、啟動mysql 。如果啟動正常了就ok,如果不正常就看mysql的日志文件

3、查看日志文件,看看報錯信息  根據報錯信息來對應處理mysql無法啟動的問題

狀況1
1 ^G/usr/sbin/mysqld: Disk is full writing './mysql-bin.~rec~' (Errcode: 28). Waiting for someone to free space... (Expect up to 60 secs delay for server to continue after freeing disk space)

這個是我的報錯信息,驚愕 磁盤竟然滿了,下面只有找那個文件夾占用磁盤空間啦

下面就一步一步找了

最後發現是mysql的日志文件占用了大概50G左右的空間,哎呦媽呀,我的服務器就130G。下面就把日志文件關閉並刪除

方法二:   

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

修改/etc/my.conf:

 代碼如下 復制代碼

[mysqld]
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock

[mysql.server]
user=mysql
basedir=/usr/local/mysql

If there is not currently a section called [client], add one at the bottom of the file and copy the socket= line under the [mysqld] section such as:


[client]
socket=/var/lib/mysql/mysql.sock

發現依舊如此,運行/etc/init.d/mysql start報錯:    Starting MySQLCouldn't find MySQL manager or server
是mysqld服務沒啟,運行/usr/local/mysql/bin/mysqld_safe &

三、非法關機造成的MYSQL無法啟動問題
 
如果是因為非法關機等原因導致MYSQL無法啟動或啟動有問題的,最好使用重新安裝的或確認是OK的MYSQL數據表及ibdata1、mysql.pid、ib_logfile0等文件進行覆蓋,天緣試過遇到過多次這種情況,就是原來的MYSQL表有問題了,總是無法啟動,但是更換成新表就可以。
 
四、重裝MYSQL

發現MYSQL有問題時,最便捷的方法,是先把mysql卸載掉,然後重裝重新配置,具體方法如下:
1、卸載MYSQL,清理掉安裝目錄和Windows目錄下的my.ini文件。
2、檢查任務管理器中是否還有mysql進程,如果有,可以把mysqld.exe殺掉,或者先殺掉再卸載也可以。
3、在cmd命令窗口,執行:sc delete mysql,該命令是清理注冊服務命令。
3. 重裝 mysql
如果是安全設置以後出現這個問題,可能是因為mysql以低權限運行的時候因為密碼策略等問題導致,大家看惡意將mysql的啟動用戶更下下密碼,然後在服務項裡設置下即可

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