LoginSignup
2
2

More than 5 years have passed since last update.

MySQLで ERROR! The server quit without updating PID file って言われた話

Last updated at Posted at 2016-03-10

MySQLで ERROR! The server quit without updating PID file って言われた話

状況

web開発をしていて,日本語を含むレコードを作成できなかったので,文字コードを調べてみたところ,latin1ってなってた

mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql>

ということで,utf8に設定しようと,一旦停止してから,/etc/my.cnfを設定して,再びMySQL起動すると,

$ sudo service mysql startStarting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/vagrant-centos65.vagrantup.com.pid).

え,起動できない...

調べると .errファイルを削除するとか,動作中のプロセスを確認するとか出てくるがそれでも解決せず

原因

どうやらMySQL5.5からはutf8への設定の記述が異なるらしい

以前
default-character-set=utf8
以降
character-set-server=utf8

結果

MySQL起動

sudo service mysql start
Starting MySQL. SUCCESS!

文字コードはutf8

mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql>

日本語を含むレコードも作成できた

結論

あたりまえだけど,問題発生したときは,変更を加えた箇所が怪しいということ
しかし,こういう仕様の変更って気づかないと結構恐ろしい

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2