2011年5月13日

[mysql 15590] Re: MySQLサーバーに別のホストマシンからの接続について(質問)

中冨様

ありがとうございます。

----- Original Message -----
From: "Katsutoshi Nakatomi" <nakatomi@xxxxx>
Sent: Thursday, May 12, 2011 12:13 AM
> 中冨です

>
> On Wed, 11 May 2011 18:39:58 +0900
> "ochiai" <s.ochiai@xxxxx> wrote:
>> そうですか!
>> rootアカウントを利用する時はHost: 123.456.7.9:3306ではなくHost:
>> localhost:3306でなくてはいけないのですね。
>> アカウントは、ユーザ名:ホストで登録するというので、ホストにIPアドレスを設定したものを試そうとしたのです。
>> ありがとうございました。
>
> その通りです。
> しかし、登録上では localhost しか登録されていないので reject されて
> しまう訳です。
>
> もし、必要であるのなら
> root/123.456.7.9
> を追加してあげてください。
>

root/123.456.7.9に対して、サーバーマシンから以下のコマンドプロンプトで接続したところ、接続できました。
mysql -uroot -h123.456.7.9 -p

しかし、クライアントマシン(123.456.7.10)から同様のコマンドを入力した場合は接続できません。

この結果は、user2/123.456.7.9(サーバーマシンのIPアドレス)の場合と同じです。

>> これはタイプミスです。実際は、エラーメッセージにあるように以下のように入力しました。
>>    mysql -uuser3 -h123.456.7.9 -p
>
> とすれば Log を見る限りではパケットが到達できない模様です。
> サーバ側の FW 設定を再確認して下さい。
> 取り敢えずクライアント側から
> telnet 123.456.7.9 3306
> を実行して port 3306 が開いていることを確認するのが先決でしょう。
>

FW設定は、岩崎さんの例を参考にサーバーPCのWindowsファイアウォールの詳細設定にて「受信の規則」の一覧を確認したところ、mysqld.exeがTCPとUDPの2つのプロトコルについて以下のようになっていました。
プロファイル=プライベート、有効=はい、操作=許可、優先=いいえ、プログラム=・・・\mysqld.exe、ローカルアドレス=任意、以下、リモートアドレス、ローカルポート、リモートポート、許可されているユーザ、コンピュータの何れも任意

このファイアウォールの状態は、mysqld.exeは開いているということでしょう。

telnetコマンドを実行しようとしましたが、よくわからないのでpingで再確認しました。

ping 123.456.7.9
当初からロストなしで通っています。

> また、アカウントを登録したあとに flush privileges が行われているかも
> ポイントでしょう。

サーバーマシンを何度も再起動し、Workbenchでユーザアカウントを確認し、Aplyボタンを押しています。

他に何かないでしょうか?お世話になります。


投稿者 xml-rpc : 2011年5月13日 14:58
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/103821
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。