MySQL起動エラー「mysqld dead but subsys locked」の原因と解決方法

このQ&Aのポイント
  • RedHatLinux上でMySQLを使用している際に「mysqld dead but subsys locked」というエラーが発生し、MySQLの起動ができなくなる場合があります。
  • このエラーの原因は、MySQLディレクトリ以下のアクセス権が異なるか、MySQLのユーザやグループが存在しない場合が考えられます。
  • エラーを回避するためには、MySQLディレクトリ以下のアクセス権を確認し、必要な権限を設定するか、MySQLのユーザやグループを作成する必要があります。
回答を見る
  • ベストアンサー

「mysqld dead but subsys locked」について

環境は、RedHatLinux、MySQL4.13系でDBサーバ、同じくRedHatLinux、PHPでWEBサーバを使用しています。文字コードをsjisで統一したところ、日本語が「???」で表示されてしまうため、Googleで調べたところ、「skip-character-set-client-handshake」をmy.cnfに追記すると解決されている方が多いため、同じように実施しmysqlを再起動したところ、「mysqld dead but subsys locked」となりmysql起動ができない状態になりました。 追記した「skip-character-set-client-handshake」をコメントアウトし、mysqlを再起動行うと起動するという状況です。何が原因なのか、Googleにて「mysqld dead but subsys locked」を検索したところ、「mysqlデイレクトリ以下のアクセス権が違っていたり、mysql のユーザかグループがなかったりするのが原因のことがある」と掲載されていました。 mysqlデイレクトリ以下のアクセス権が異なるファイル、フォルダ等発見されませんでした。 どなたか、エラーを回避する方法御教授願えませんでしょうか。宜しく御願いいたします。

  • MySQL
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • mooboogie
  • ベストアンサー率68% (28/41)
回答No.1

定かではないですが、「mysqld dead but subsys locked」が導入されたのが4.1.5? http://cl.pocari.org/2005-10-30-1.html 文字化けの話をするときは、何で見ると文字化けするかを書いた方が良いとおもいます。 ローカルのターミナル、クライアントのターミナル、phpMyAdminなどのブラウザ、QueryBrowser、かねやん、自作アプリの中など。 クライアントの場合は、ODBCの使用有無とか。

chobi55
質問者

お礼

mooboogie様、アドバイスありがとうございました。 とても簡単なミスでした。 MySQLのバージョンが古いため、skip-character-set-client-handshakeが無効ということがわかりました。 アップデートをし実施したところ無事に使用でき、日本語の化け文字回避ができました。 今後質問時には、より詳しい状況を説明するよう心がけます。

関連するQ&A

  • mysql.sockとmy.cnfの設定

    FreeBSD7.2 release mysql 5 php 5 apache 2.2 でサーバを立てようとしています。 phpの文字化けを解決しようといろいろ調べていて、 「skip-character-set-handshake」 をmy.cnfの[mysqld]の部分に追加すれば良いらしいと考えました。 しかし、追加してmysqlを再起動すると /tmp/mysql.sockが無くなってしまい、mysqlにつながらないというエラーが出ます。 「skip-character-set-handshake」をコメントアウトした状態で mysqlを再起動すると、/tmp/mysql.sockは存在していて、 mysqlにはつながりますが、文字化けします。 「skip-character-set-handshake」は使わなくてもいいなら、その他の方法で文字化け解消を、また、 「skip-character-set-handshake」を使わなければ行けない場合は /tmp/my.sockの問題を解決しないといけません。 お詳しい方からの情報をお待ちしております。

    • ベストアンサー
    • MySQL
  • phpとデータベースの文字化け

    mysqlとphpでの文字化けに苦しんでいます。 サイトなどめぐって [mysqld] default-character-set=utf8 skip-character-set-client-handshake をmy.iniに追加すると直るらしいのですが、入力後mysqlを再起動させてstatusコマンドでみてもlatain1になっていて変化ありません。 テーブル製作時の設定がわるいのかなと思ってみたり、、、 よろしくお願いします。

  • mysqlのmy.iniを設定したら起動しない

    phpからmysqlにデータをINSERTしたところ文字化けしたため、 my.iniに下記を追記しなければならないということを知り、設定しました。 [mysqld] default-character-set = utf8 skip-character-set-client-handshake [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 ところが、my.iniファイルをちょっとでも編集すると、mysqlが起動しないというトラブルが発生しています。 mysqlからmy.iniファイル自体は見に行っているようなのですが、原因が分からず困っております。 環境は、 ・Windows7 Ultimate(64bit) ・Pleiades3.6 (Eclipse3.6 Helios) です。 お詳しい方からのご教示お待ちしております。

  • my.ini 内を変更しても文字化けがなおらない

    my.ini 内の [mysql]、[mysqld]、[mysqldump] の部分を変更したのですが、文字化けが直りません。 文字化けします。 対応:my.ini 内の [mysql]、[mysqld]、[mysqldump] の部分 ↓ [mysqld] default-character-set=utf8 skip-character-set-client-handshake [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 に変更しましたが コマンドプロンプトで mysqlに接続後、statusと打ち込んで状態を確認しても Client characterset:latin1 Server characterset:latin1 となったままです。 とうすればよろしいでしょうか? 何卒よろしくお願い致します。

  • ODBC接続で全角文字が文字化け

    MySQL⇒MS-ACCESSのODBC接続で文字化けが発生してます。 ■MySQL 5.0.27 ■MyODBC 3.51.19 ■MS-ACCESS 2000 (Windows2000) ○my.cnfの設定 [mysqld] skip-character-set-client-handshake [mysqld_safe] skip-character-set-client-handshake [ODBC] default-character-set=sjis [client] default-character-set=sjis ○status Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 ▽試したこと ・Initial Statement に set names 'sjis' を設定 ・Character Set sjis、ujis、latin1 それぞれを指定 半角文字は大丈夫ですが、全角文字になると「??????????」と表示されています。 MySQL+PHPでは問題なく使えます。 解決方法分かる方アドバイスお願い致します。

    • ベストアンサー
    • MySQL
  • MySQLのClient characterset

    MySQLの文字コードについて、質問2点あります 環境は、Windows7 ・MySQLサーバのバージョン: 5.5.8 ・MySQL クライアントのバージョン: mysqlnd 5.0.7-dev - 091210 <質問1> skip-character-set-client-handshakeせずに、 MySQLのClient charactersetを、utf8にしたいのですが、 my.iniへ、 [mysql] default-character-set=utf8 [client] default-character-set=utf8 と追記しても、 statusで確認すると、 Client characterset: cp932 と表示されてしまいます。 skip-character-set-client-handshakeと書かずに、 Client characterset: utf8 とするには、どうすればよいでしょうか。 <質問2> Client characterset: cp932のメリットについて Client charactersetを、 utf8じゃなくて、cp932にするメリットとしては、 何があるのでしょうか? コマンドラインで日本語表示できることぐらいしか思いつかないのですが… そもそも、「MySQLのClient characterset」の意味がよく分かっていないので、 教えてください

    • ベストアンサー
    • MySQL
  • さくらインターネットのMySQL の文字セット

    さくらでMySQLを使いたいのですが、文字コードをUTF-8からSJISにしたいのです。 無知識で初め、検索やログを頼りにチャレンジしたのですがいまいち設定がわかりません。 my.cnfに [mysqld] default-character-set=sjis skip-character-set-client-handshake と、書けばいい、などの情報もあったのですが、そもそも「my.cnf」がどこに存在するのかすら分かりません。どなたか教えていただけませんでしょうか。 MySQL 5.1

    • ベストアンサー
    • MySQL
  • MySQLの文字コード変換

    XAMPP 1.7.1をダウンロードしてMySQL5.1.33をいじってるんですが defaultの文字コードをlatin1からutf8への変更がどうしてもできません。 \XAMPP\mysql\binにあるmy.iniに以下の記述をしました。 [client] default-character-set=utf8 [mysqld] default-character-set=utf8 skip-character-set-client-handshake [mysqldump] default-character-set=utf8 [mysql] default-character-set=utf8 ネットで調べると以上の方法で解決できるとなっていたんですが記述後、再起動してstatusをしてもServer characterset,Db characterset,Client characterset,Conn. charactersetすべてlatin1のままです。 どなたか解決できる方がいましたら是非ともご教授ねがいます。

    • ベストアンサー
    • MySQL
  • XAMPP1.7.1をインストールし、MySQLの文字コード設定について

    MySQLの文字コードを変更について教えてください。 my.iniファイルを開いて [mysqld] の中に ・・・ default-character-set=utf8 skip-character-set-client-handshake [mysqldump] ・・・ default-character-set=utf8 [mysql] ・・・ default-character-set=utf8 と変更したのですが、MySQLを再起動しstatusで確認したのですが、 latin1のままで変更されません。 XAMPPをアンインストールをして再度同じ設定を行ってもlatin1でした。my.iniファイルのほかに何かのファイルを変更しなくてはいけないのでしょうか? ↓のサイトを参考に設定を行っています。 http://mysqlx01.seesaa.net/です。 教えてください。 宜しくお願いします。

    • ベストアンサー
    • MySQL
  • mysqlの文字化けについてです

    学校でjavaの勉強をしている者です。 初心者です。 学校の宿題をやるために、自宅でmysqlをインストールしたのですが、 javaで実行すると文字化けしてしまいます。 学校では、my.iniの中の [mysql] default-character-set=latin1 を [mysql] default-character-set=sjis と変更し、 [mysqld] default-character-set=latin1 を [mysqld] default-character-set=sjis skip-character-set-client-handshake と変更し、 SQLを再起動すれば解決すると習ったのですが、 文字化けが起こってしまいます。 show variables like '%char%'で文字コードを確認してみたところ、 | 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 | このように、sjisになっていませんでした。 どうしてなんでしょうか? どなたか解答のほどよろしくお願いします。