XAMPPについて質問です。

いろいろいじってるうちに、XAMPPコントロールパネルから
MYSQLの停止ができなくなってしまいました。

★mysqlテーブル>userテーブルのデータを追加・削除などもしました。

XAMPPコントロールパネルで停止のボタンを押すと、
パネル下に次のようなエラーが表示され停止できません。
-------------------------------------
作業中...
エラー:MySQLの停止中にエラーが発生しました。[0]
-------------------------------------

探っているうちに分かったのは、
・WindowsタスクマネージャーからMYSQLを停止することはできます。
・Mysqlデータベース>Userテーブル>「pma」ユーザーのパスワードを空にすると、
XAMPPコントロールパネルから、MYSQLの停止ができました。

XAMPPコントロールパネルから、MYSQLの停止ができるようになる方法を教えてください。
宜しくお願いします。

OS:Windows Vista
XAMPP:Windows版 Version 1.6.6a
XAMPPコントロールパネル:ver2.5

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2010/03/06 13:07:05
  • 終了:2010/03/10 06:57:12

ベストアンサー

id:rouge_2008 No.4

rouge_2008回答回数594ベストアンサー獲得回数3512010/03/09 02:51:25

ポイント300pt

> pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。

厳密にはバージョンによって異なりますので、次のように訂正します。

Xampp ver.1.6.8のMysqlでは、pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。

ver.1.6.6aでもおそらく同じだと思われます。

Xamppコントロールパネルでpma(パスワードなし)を使用する仕組みになっていると考えていいと思います。

※コメントにも書きましたが、1.7.1では仕様が若干変更になっているようです。

バージョン1.7.1に含まれるMysqlでは、pmaは何も許可されていません。(シャットダウンも出来なくなっています。)


phpMyAdminにログインして操作できていますので、今回はパスワード忘れに関する質問ではないと思いますが、一応パスワードを忘れた時の対処方法も・・・

・方法1

http://www.high5.msn.to/weblog/?p=58

MYSQLのサービスを停止。xamppとかっだたらコントロールパネルからでもいいだろう。

一応apachもstopしておきましょう。

そして、

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

と一行記述されたファイルを任意のファイル名でC:\あたりに保存する。mysql-init.txtという名前にしときましょう。C:\mysql-init.txt

コマンドプロンプトで

C:\> C:\xampp\mysql\bin\mysqld-nt –init-file=C:\mysql-init.txt

と記述してapach,mysqlを再起動しましょう。

mysql -u root -p で新しいパスワードを入力してはいれます。

こちらでは上記の方法で大丈夫でした。

※サイトでは一部「'」が全角で記述されているのでコピーする時には注意してください。

(上記の引用は半角に直してあります。)

※上記の方法実行後は「mysqld-nt.exe」が起動したままになりますので、コントロールパネルからはMySQLを起動する必要はありません。(そのままphpMyAdminからも利用できます。)

※コントロールパネルの方から「mysqld.exe」を起動したい場合は、「mysqld-nt.exe」を終了させてから起動してください。


・方法2

上記の他に、「xampp\mysql\backup\mysql」から「user.MYD」「user.MYI」「user.frm」をコピーして、「xampp\mysql\data\mysql」に戻す方法でも大丈夫です。

※すべてのユーザーが初期状態に戻って、パスワードが設定されていない状態に戻ります。(新規に追加したユーザも消えますので注意してください。)


・方法3

一応公式ページにも案内があるのですが、なぜか以下の方法では無理でした。

・「どのようにMySQLのrootユーザのパスワードを変更するのですか?(方法3)」

http://www.apachefriends.org/jp/faq-xampp-windows.html#password2

id:webuser

詳しいご説明ありがとうございます。

自分の環境でpmaのパスワードがなぜ設定してあったのか分からないのですが、

パス無しでとくに問題もなさそうだったので、パス無しの方法でいくことにしました。

2010/03/10 06:54:18

その他の回答(3件)

id:Km1967 No.1

Km1967回答回数224ベストアンサー獲得回数352010/03/06 13:47:05

ポイント23pt

「pma」ユーザーのパスワードを空にすると、

XAMPPコントロールパネルから、MYSQLの停止ができました。

空にしておいてphpMyAdminの特権にて再度設定する

http://server.limitlink.jp/mysql.php

id:webuser

ありがとうございます。

特権にて再度設定しても同じエラーが出てしまいました。

2010/03/07 06:33:41
id:km1967 No.2

km1967回答回数541ベストアンサー獲得回数402010/03/06 17:24:10

ポイント23pt

XAMPPをインストールし直す

id:Km1967 No.3

Km1967回答回数224ベストアンサー獲得回数352010/03/07 14:29:01

ポイント23pt

再設定しても同じであるならば、再インストールかそのまま使うかの選択になる


回答1の続きのページの末尾

http://server.limitlink.jp/phpmyadmin.php

途中でパスワードを忘れてしまうとxamppを再インストールする必要があります。

パスワードの取り扱いにはご注意ください。

id:webuser

ありがとうございます。

前回回答頂いた時、そのページ見て軽くショックを受けました。

だめなんですかね・・

2010/03/08 12:40:51
id:rouge_2008 No.4

rouge_2008回答回数594ベストアンサー獲得回数3512010/03/09 02:51:25ここでベストアンサー

ポイント300pt

> pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。

厳密にはバージョンによって異なりますので、次のように訂正します。

Xampp ver.1.6.8のMysqlでは、pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。

ver.1.6.6aでもおそらく同じだと思われます。

Xamppコントロールパネルでpma(パスワードなし)を使用する仕組みになっていると考えていいと思います。

※コメントにも書きましたが、1.7.1では仕様が若干変更になっているようです。

バージョン1.7.1に含まれるMysqlでは、pmaは何も許可されていません。(シャットダウンも出来なくなっています。)


phpMyAdminにログインして操作できていますので、今回はパスワード忘れに関する質問ではないと思いますが、一応パスワードを忘れた時の対処方法も・・・

・方法1

http://www.high5.msn.to/weblog/?p=58

MYSQLのサービスを停止。xamppとかっだたらコントロールパネルからでもいいだろう。

一応apachもstopしておきましょう。

そして、

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

と一行記述されたファイルを任意のファイル名でC:\あたりに保存する。mysql-init.txtという名前にしときましょう。C:\mysql-init.txt

コマンドプロンプトで

C:\> C:\xampp\mysql\bin\mysqld-nt –init-file=C:\mysql-init.txt

と記述してapach,mysqlを再起動しましょう。

mysql -u root -p で新しいパスワードを入力してはいれます。

こちらでは上記の方法で大丈夫でした。

※サイトでは一部「'」が全角で記述されているのでコピーする時には注意してください。

(上記の引用は半角に直してあります。)

※上記の方法実行後は「mysqld-nt.exe」が起動したままになりますので、コントロールパネルからはMySQLを起動する必要はありません。(そのままphpMyAdminからも利用できます。)

※コントロールパネルの方から「mysqld.exe」を起動したい場合は、「mysqld-nt.exe」を終了させてから起動してください。


・方法2

上記の他に、「xampp\mysql\backup\mysql」から「user.MYD」「user.MYI」「user.frm」をコピーして、「xampp\mysql\data\mysql」に戻す方法でも大丈夫です。

※すべてのユーザーが初期状態に戻って、パスワードが設定されていない状態に戻ります。(新規に追加したユーザも消えますので注意してください。)


・方法3

一応公式ページにも案内があるのですが、なぜか以下の方法では無理でした。

・「どのようにMySQLのrootユーザのパスワードを変更するのですか?(方法3)」

http://www.apachefriends.org/jp/faq-xampp-windows.html#password2

id:webuser

詳しいご説明ありがとうございます。

自分の環境でpmaのパスワードがなぜ設定してあったのか分からないのですが、

パス無しでとくに問題もなさそうだったので、パス無しの方法でいくことにしました。

2010/03/10 06:54:18
  • id:rouge_2008
    > ・Mysqlデータベース>Userテーブル>「pma」ユーザーのパスワードを空にすると、
    XAMPPコントロールパネルから、MYSQLの停止ができました。

    上記の対処方法では駄目なのですか?
    pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。(※コントロールパネルで利用するためにそのようになっているのだと思います。)
    パスワードを設定したユーザーが必要なのでしたら、新規に別のユーザーを作成してはいかがでしょうか?
  • id:rouge_2008
    「xampp-control.exe」で、MySQLサーバーのシャットダウンにユーザー「pma」をパスワードなしで使用するようになっていると思われます。
    「xampp-control.exe」はコンパイルされたアプリケーションですので、パスワードを使用するように修正するのはほぼ不可能だと思います。
    「pma」をパスワードなしのままにしておくか、「xampp-control.exe」からの終了を諦めて、「mysql_stop.bat」を使用してはいかがでしょうか?
    「mysql_stop.bat」のショートカットをデスクトップ等に作成しておくと、MySQLを終了したい時に手軽に実行できて良いと思います。

    「mysql_stop.bat」に以下のような行がありますので、「--password=」の後ろにパスワードをそのまま入力しておきます。
    mysql\bin\mysqladmin --user=pma --password= shutdown


    あるいは、バージョン1.7.1を使用するのはいかがでしょうか?
    シャットダウンにユーザー「pma」を使用しないらしく、パスワードを設定してもコントロールパネルからMySQLを終了可能です。

    個人的には「pma」にはパスワードを設定せず、シャットダウン専用のユーザーとして使うのが良いと思います。
    必要でしたら、やはり別のユーザーを作成してはいかがでしょうか?
  • id:webuser
    rouge_2008さん、ありがとうございます。
    試してみたいと思います。

    別の質問のほうにも書かせて頂いたのですが、
    上の回答欄のほうにどんどん書いてしまってOKですので^^

    どうも、コメント欄を見逃してしまいそうで・・
  • id:webuser
    rouge_2008さん
    >pmaは初期状態でmysqlサーバーのシャットダウンしか許可されていないユーザーで、パスワードも未設定です。
    >パスワードを設定したユーザーが必要なのでしたら、新規に別のユーザーを作成してはいかがでしょうか?
    そのようにしたいと思います。

    「mysql_stop.bat」も確認しました。
    これは使いそうですね。
    覚えておきたいと思います。

    ポイントで謝礼したいと思いますので、お手数ですが上記2個のコメントを、
    そのまま上の回答欄に乗せてもらえますでしょうか。
  • id:rouge_2008
    遅くなりましたが、回答させていただきました。
    よろしくお願いします。
  • id:rouge_2008
    たくさんのポイントといるかをありがとうございました。

    ※1.6.6aを入れて確認してみましたが、やはり初期状態で「pma」にパスワードはありませんでした。
    mysqlデータベースのuserテーブルをいじった時か、あるいはコマンドライン操作でパスワードを設定したのかもしれませんが、何か覚えはないのでしょうか?
    あるいは、MySQLを使用するアプリケーションを何か入れませんでしたか?
  • id:webuser
    rouge_2008さん
    もういろいろいじってる間の出来事でして、何をやったのか分からなくなっています。

    ※1.6.6aを入れて確認してみましたが、やはり初期状態で「pma」にパスワードはありませんでした。
    との事なので、もしかしたら、自分で(無意味に)userテーブルの「pma」にパスワードを入れてしまった可能性もあります。

    勉強中なので、また何か私の質問を見かけたら宜しくお願いします。
  • id:rouge_2008
    それでは自分でいじっている内に設定したのかもしれませんね。

    私で分かる事でしたら回答させていただきます。m(__)m

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません