PIDファイルが見つからなくてMySQLが停止できない時に対処する方法

MySQLを停止しようとして以下のエラーが出ることがあります。

service mysqld stop
MySQL server PID file could not be found!                  [FAILED]

PIDファイルが見つからないので停止できない場合は次のようにして対処します。

ps auxww | grep mysql
root     10000  0.0  0.0 100000   200 ?        S    May21   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/etc/my.cnf --datadir=/usr/local/mysql/data --pid-file=/tmp/mysql
mysql    20000  0.1 10.2 20000 200000 ?      Sl   Oct15  12:00 /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/error.log --open-files-limit=65535 --pid-file=/tmp/mysql --socket=/tmp/mysql.sock --port=3306

これでPIDファイルのパスとPIDが確認できます。 –pid-fileに指定されているファイルパスのファイルを開いてmysqlユーザーの方のプロセスIDを記入します。

vim /tmp/mysql
20000 #mysqlユーザー側のプロセスIDを記入

これで

service mysqld stop

を実施します。