このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。 |
いつもお世話になっております。OSX Server10.4が手元にきました。 XOOPSやりたくて設定しています。その設定の為にPHPMyAdminへアクセスすると 「phpMyAdmin 2.6.2 へようこそ #2002 - サーバーが反応しません。 (または、ローカルの MySQL サーバーのソケットは正確に設定されません)」となります。 /アプリケーション/サーバー/MYSQLマネージャにて インストールとサービス開始は済ませています。 Server10.3の際は、この手順で、ほかには何もせずにアクセスできたのですが、 どこがおかしいのでしょう。 ちなみにターミナルにて「mysql」すると以下のようになります。 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 4.1.10a Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> ご指導くださいませ。
かず さんからのコメント
( Thursday, May 05, 2005 16:10:58 )
まつもとさんへ はじめまして、OSX ServerでWebサーバーを運用しているかずと申します。 私も10.3.9のアップグレードでサーバーが死んでしまい、早々に10.4Serverへ移行をいたしました。 その際にMySQLの設定でまつもとさんと同様の症状が発生し解決しましたので、 お役に立てればと思いレスさせていただきました。 私のケースでは MySQLのUNIX socketのパスが異ることから発生した問題で、 my.cnfにて「 /tmp/mysql.sock」へ記述したところ解決いたしました。 一度、rootでMySQLへ接続し、「/s」で 「UNIX socket: /tmp/mysql.sock」 となっているか確認してみてはいかがでしょうか。
ふな さんからのコメント
( Tuesday, May 10, 2005 23:19:20 )
はじめまして。 まつもとさん同様のエラーが出て、phpMyAdminが利用できずに困っております。 UNIX socket: を調べてみたところ、「/var/mysql/mysql.sock」と出ました。 「 /tmp/mysql.sock」へ記述の変更方法が分からずに途方にくれております。 是非ご教授頂けたらと思います。
かず さんからのコメント
( Thursday, May 12, 2005 00:39:05 )
ふなさんへ はじめまして、かずといいます。TigerServerの場合でご説明しますね。 MySQLの設定ファイルmy.cnfを作成するわけですが、テンプレートが「/usr/share/mysql」に 「my-small.cnf」「 my-medium.cnf」「my-large.cnf」の3種類がありますので、 (TigerServer標準のMySQL以外では「/usr/local/mysql/support-files」にあります) 運用の規模に合わせてどれかのファイルを選んでください。 その「.cnf」ファイルをテキストエディタなどで開き [client] #password = your_password port = 3306 socket = /var/mysql/mysql.sock ←この部分を 「socket = /tmp/mysql.sock」に書き換えて上書き保存します。 書き換えた「.cnf」ファイルを「my.cnf」にリネーム(-mediumなどをトル)してから 「/etc/」に配置してMySQLを再起動すれば完了です。 再起動後、MySQLのステータスで確認してみてください。 「my.cnf」の作成時に文字コードの設定もしておくと便利ですよ。 お役に立てば幸いです。
ふな さんからのコメント
( Thursday, May 12, 2005 09:43:12 )
かずさん ご丁寧なご説明ありがとうございます。 まだ作業をしておりませんが、とりあえずお礼ということで。 うまく行きましたらまた書き込みさせて頂きます。
ふな さんからのコメント
( Tuesday, May 17, 2005 12:54:17 )
こんにちわ。 先日はご丁寧なご説明を頂きましてありがとうございました。 早速やってみたのですが、うまくいきませんでしたので、再度ご指導いただけたらと思います。 まず、[client] 「socket = /tmp/mysql.sock」の部分を書き換えたmy.cnfを作成して、「/etc/」に配置にしてみたところ、phpMyAdminは変わらずエラーが出てしまいました。 そこから[server]、[client]両方を「socket = /tmp/mysql.sock」書き換えたところ、phpMyAdminで接続ができました。 その後Movable Typeの設置をしてDBに接しようとしたところ、MTからの接続の場合、エラーが発生してしまいました。 上記の場合はやはり[server]の部分まで書き換えてしまった為にエラーが発生してしまっているのでしょうか? もし何かお気づきの点がございましたら、ご教授お願い致します。
Hickey さんからのコメント
( Tuesday, May 17, 2005 14:29:47 )
Appleが文書を公開されています。 → Mac OS X Server 10.4: Issues connecting PHP to MySQL
ふな さんからのコメント
( Wednesday, May 18, 2005 23:50:20 )
Hickeyさん ありがとうござました。 上記文書を参照しながら試行錯誤してなんとかMTの設定が出来ました。 かずさんも何度もありがとうございました。 また何かありましたらよろしくお願い致します。
kankichi さんからのコメント
( Monday, June 13, 2005 22:55:04 )
こんばんは。 私もMySQLへの接続ができない状況で四苦八苦しています。 http://docs.info.apple.com/article.html?artnum=301457 の文書も参考にしたのですが駄目でした。 ここの文書に書かれている内容は、具体的にはどう設定しろという事なのでしょうか? ご教授頂ければ幸いです。
midore さんからのコメント
( Tuesday, June 14, 2005 02:00:33 )
初めまして、こんばんは。 >ここの文書に書かれている内容は、具体的にはどう設定しろという事なのでしょうか? 英語に堪能ではないしXserverにも詳しくないですが On Mac OS X Server 10.4, においては MySQL creates this socket file at /var/mysql/mysql.sock. ソケットファイルは /var/mysql/mysql.sock.に作られるようですね。 #ちなみに通常のosx tigerにmysql ab が配布してるinstaller 付きのバイナリを利用した場合 #はソケットの場所はデフォルトで tmp/mysql.sock.です。 が、 php はデフォルトでmysql用ソケットファイルを /tmp/mysql.sock から探そうとしますので接続できないよっという事態になる、そこで解決法としてどちらかの 設定ファイル(php.ini or my.cnf)を編集しなさいということで二通りのやり方が紹介されて いて2番目のほうがセキュアだということが述べられてるようです。 ただ気になる点として下記に2点あげます。 1、このマニュアルによると、最後に下記のように権限を変更しないさいとありますが、 mysql ab配布のosxインストーラによる場合はこれに加えてスティッキービットがたっています。 sudo chmod 775 /var/mysql 2、mysql4.1 にしたらphpに接続できなくなったいう問題の原因として 下記のページにあるようなmysqlの認証方法が下位バージョンと互換性がないことから 起因している場合もあるようです。下記には解決法も同時に公開されています。 皆様がどちらの問題をとりあげているのか?あるいは両方ともなのか?あるいはまた別の 原因からなのかわからないまま書き込んでしまいました。なにかの手がかりになればいい のですが。。。 → http://dev.mysql.com/doc/mysql/ja/old-client.html
kankichi さんからのコメント
( Wednesday, June 15, 2005 08:58:26 )
midoreさん こんにちは。 丁寧な回答ありがとうございます。 参考にして色々とやってみたのですが、以前解決には至りません。 ここで諦めるのも悔しいので、もう少し努力してみたいと思います。
まつもと さんからのコメント
( Wednesday, June 22, 2005 11:11:57 )
kankichiさん、こんにちは。 私もserver10.4にてXOOPSやるのにかなり苦労しました...(^^;。 >my.cnfにて「 /tmp/mysql.sock」へ記述したところ解決いたしました。 と >Appleが文書を公開されています。 この通りの事をしてマシンを再起動するとすんなり動きました。
とも さんからのコメント
( Sunday, June 26, 2005 23:34:51 )
kankichiさん、こんにちわ。 まさしく今、苦労しているところです。 ググってるとここにたどり着きました。 どこにmysqld --old-passwordを記述すれば宜しいのでしょう? mysqld --old-passwordをmysql.serverに記述したところ、PerlのDBDも/tmp/mysql.sockが見つからないという始末。 おとなしくMySQL4.1から4.0にダウングレードした方がいいのでしょうか。
とも さんからのコメント
( Monday, June 27, 2005 09:45:29 )
すみません、皆さん。 自分はOSX Tigerを使っていて、OSX Serverじゃないです。 別のスレ立てた方がよろしいでしょうか?
くま さんからのコメント
( Monday, June 27, 2005 18:24:09 )
ここが参考になるかと思います → ここ
とも さんからのコメント
( Tuesday, June 28, 2005 07:12:21 )
ありがとうございます、くまさん mysqlのインストール自体は問題なさそうです。 mysqldの設定も正しく行えているようでした。 問題はPHP側でしょうか。 PHPを完全に削除したいなあ。。。。。 PHPをインストールしてもphpinfoの中をみるとどうやらデフォルトのままですし....おかしいなあ。
モジョ さんからのコメント
( Sunday, August 21, 2005 15:22:44 )
Mac OS X Server 10.4のMySQLは、10.3を経験していると、??という瞬間があるのでたいへんでした。 かくいう私も、PHPで接続できない->my.cnfの作成で解決でした。 ところが、それは10.3からのアップグレードを行ったマシンで、新規インストールして同じことをやろうとしたら、全然つながりません。 で、確認している途中で、MySQLアカウントのパスワードを4.1対応から旧バージョン互換に変更したら、スパッと接続できました。これからXOOPSも確認する予定ですが、そういうことだと思います。 mysqladmin -u ユーザ名 -p old-password パスワード てな具合で、mysqladminコマンドで変更しました。 お役に立てれば....
takecat さんからのコメント
( Saturday, September 17, 2005 22:12:10 )
モジョさんのコメント >mysqladmin -u ユーザ名 -p old-password パスワード で数時間の格闘にピリオドが打てましたw ありがとうございました。 あまり詳しく理解してなかったのですがmysqlasdminの場所も知らなかったのですがspotlightで 捜して、コマンドラインでいどうしたら、成功しました。 これって、最初からキレイにアップルが説明するべきなのでは?と思いましたが。