溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

mysql啟動失敗,報(bào)沒有pid錯誤

發(fā)布時(shí)間:2020-07-10 18:36:46 來源:網(wǎng)絡(luò) 閱讀:534 作者:ttlovey 欄目:MySQL數(shù)據(jù)庫

前幾天在安裝完Mysql后,啟動mysqld失敗,花了很長時(shí)間才找到原因,現(xiàn)在根據(jù)網(wǎng)友提供的解決方法匯總一下,方便遇到時(shí)可以參考排查

現(xiàn)象:service mysql start 時(shí)提示如下錯誤:

[root@mysqldb data]# service mysql start
Starting MySQL..The server quit without updating PID file ([失敗]/data/3306/mysql.pid).

原因分析:mysql.pid文件是在重動mysql的時(shí)候會創(chuàng)建的,如果創(chuàng)建失敗就會提示這個錯誤,發(fā)現(xiàn)導(dǎo)致此錯誤有很多種原因,

            像權(quán)限、端口被占用、參數(shù)文件配置錯誤等等,現(xiàn)具體的如下:

解決方式:

在mysql的datadir數(shù)據(jù)目錄下沒有pid文件或者未被授權(quán)

(1)一定要給譬如/data/mysql授權(quán)

chown -R mysql:mysql /data/mysql

(2)如果授權(quán)了不好使,你可以自己在/data/mysql下建立一個以主機(jī)名命名的pid,如我的主機(jī)名是centos-6.3

      你可以

cd /data/mysql && touch centos-6.3.pid

       在里面隨意寫一個進(jìn)程中沒有的pid號

(3)如果還是不行,你就需要看看配置文件/etc/my.cnf里面的配置了,將port、datadir、basedir、 socket前的#去掉

(4)另外的處理方法還有可能是下面的原因?qū)е?/p>

   1>可能是第二次在機(jī)器上安裝mysql,有殘余數(shù)據(jù)影響了服務(wù)的啟動。

   解決方法:去mysql的數(shù)據(jù)目錄/data看看,如果存在mysql-bin.index,就趕快把它刪除掉吧,它就是罪魁禍?zhǔn)琢恕?
  2>mysql在啟動時(shí)沒有指定配置文件時(shí)會使用/etc/my.cnf配置文件,請打開這個文件查看在[mysqld]節(jié)下有沒有指定數(shù)據(jù)目錄(datadir)。

 解決方法:請?jiān)赱mysqld]下設(shè)置這一行:datadir = /usr/local/mysql/data

  3>skip-federated字段問題

   解決方法:檢查一下/etc/my.cnf文件中有沒有沒被注釋掉的skip-federated字段,如果有就立即注釋掉吧。

 4>selinux惹的禍,如果是centos系統(tǒng),默認(rèn)會開啟selinux

 解決方法:關(guān)閉它,打開/etc/selinux/config,把SELINUX=enforcing改為SELINUX=disabled后存盤退出重啟機(jī)器試試。

(5)、由于是以系統(tǒng)命令方式啟動的,檢查mysql.server配置文件內(nèi)的配置項(xiàng)是否正確,若 無法判斷參數(shù)是否正確,可以以Mysqld_safe來啟動

  參考命令如下:

[root@mysqldb 3306]# ll
total 8
drwxr-xr-x 5 mysql mysql 4096 Mar 15 19:16 data
-rw-r--r-- 1 mysql mysql 3676 Mar 15 18:44 my.cnf

[root@mysqldb 3306]# vi mysql.start --創(chuàng)建

/mysql/app/mysql/bin/mysqld_safe --defaults-file=/mysql/data/3306/my.cnf --user=mysqld

[root@mysqldb 3306]# chmod -R 777 mysql.start --授權(quán)

[root@mysqldb 3306]# ll
total 12
drwxr-xr-x 5 mysql mysql 4096 Mar 15 19:16 data
-rw-r--r-- 1 mysql mysql 3676 Mar 15 18:44 my.cnf
-rwxrwxrwx 1 root root 89 Mar 15 22:36 mysql.start
[root@mysqldb 3306]# ./mysql.start
[root@mysqldb 3306]# 2018-03-15T14:36:52.021705Z mysqld_safe Logging to '/mysql/log/3306/mysqldb-error.err'.
2018-03-15T14:36:52.043126Z mysqld_safe Starting mysqld daemon with databases from /mysql/data/3306/data
[root@mysqldb 3306]# ps -ef|grep mysqlroot
3627 1 0 22:36 pts/0 00:00:00 /bin/sh /mysql/app/mysql/bin/mysqld_safe --defaults-file=/mysql/data/3306/my.cnf --user=mysqldmysql
4764 3627 48 22:36 pts/0 00:00:11 /mysql/app/mysql/bin/mysqld --defaults-file=/mysql/data/3306/my.cnf --basedir=/mysql/app/mysql --datadir
=/mysql/data/3306/data --plugin-dir=/mysql/app/mysql/lib/plugin --user=mysqld --log-error=/mysql/log/3306/mysqldb-error.err --open-files-limit=65536
--pid-file=/mysql/data/3306/mysql.pid --socket=/mysql/data/3306/mysql.sock --port=3306
root 4796 2174 0 22:37 pts/0 00:00:00 grep mysql
(6)、Mysql關(guān)閉時(shí)命令是否正確,第6點(diǎn)與本文說明不一致,但是這個非正確關(guān)閉也會導(dǎo)致這種現(xiàn)象

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI