2011年5月11日

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

下記の環境でMySQLサーバーに別のホストマシンから接続を試みていますが、つながりません。
どのようにすれば、クライアントからサーバに接続できるか教えてください。
ログインの事例はどれもlocalhostのユーザのログインばかりで、その他のホストマシンからのログインコマンド事例がありません。
なお、サーバーマシン(localhost)上でコマンドプロンプトでmysqlコマンドでのログインは確認しました。

<作業環境>
1.サーバーマシンの環境
  MySQLサーバ:バージョン5.5.11

  (mysql-5.5.11-win32.msi)
  Workbench:バージョン5.2.33CE Revision 7508
  (mysql-workbench-gpl-5.2.33b-win32.msi)
  OS:Windows 7 Professional SP1(32bit)
  PC:DELL Vostro(Intel Core 2 Duo,CPU E7500 2.93GHz) RAM 2.00GB
2.クライアントマシンの環境
  サーバマシンと同じ構成のPC
3.ネットワーク等の環境
  ワークグループ:WORKGROUP
  ドメイン:ドメイン構成なし
  サーバマシンとクライアントマシンは同一セグメント内に配置され、間にルータはありません。

<作業内容>
1.サーバマシンのWorkbenchで以下の処理を実行
1)rootアカウントでサーバインスタンスを立ち上げ
  インスタンス名:Local MySQL
  Host:localhost
Server:5.5.11-log
Status:Running
  Windowsのサービス名:MySQL(開始)
2)アカウントを追加(User/From Host)
2-1)root/localhost
2-2)user1/%
2-3)user2/123.456.7.9(サーバーマシンのIPアドレス)
2-4)user3/123.456.7.10(クライアントマシンのIPアドレス)
2-5)user4/123.456.7.%
 なお、rootのロールはDBA、user%のロールはProcessAdmin,MonitorAdmin,DBManager,DBDesignerを設定。
 アカウントはすべて無事追加された。
3)NewConnectionを追加
Connection information
Name: localhost
Host: localhost:3306
Server: MySQL
Version:5.5.11-log
User: root
接続テストOK
4)rootアカウントでテストデータsakilaをインポート
 Tables(16items),Views(7items),Routines(6items)がインポートされたのを確認。
5)NewConnectionを追加
Connection information
Name: root-127001
Host: 127.0.0.1:3306
Server: MySQL
Version:5.5.11-log
User: root
接続テストOK
  同様に、user1,user2,user4は接続できた。(コマンドプロンプトでも確認)
6)NewConnectionを追加
Connection information
Name: root-19209
Host: 123.456.7.9:3306 …サーバのIP/ポート
Server: MySQL
Version:5.5.11-log
User: root
接続テスト エラー
  接続テストボタンをクイックするとパスワードを聞いてくるので、パスワードを入力しているにもかかわらず、「Access denied for user 'root'@コンピュータ名(using password:NO)」
というメッセージが出て、接続に失敗する。
Open Connnectionでこの接続(root-19209)をクリックし、パスワードを入力すると、

  「Your connection attempt failed for user 'root' from your host to
server at 123.456.7.9:3306」と接続に失敗し、4つのことを確認するように言ってくる。
  1.サーバが動いているか?→動いている。
    「コンピュータの管理」で「サービス」を見ると、「MySQL」は「開始」となっている。
  2.ポート3306でサーバが動いているか?
    「コマンドプロンプト」で「netstat -a」でポートの状況を見ると、
     TCP 0.0.0.0:3306 コンピュータ名:0 LISTENING
     TCP 127.0.0.1:3306 コンピュータ名:49189 ESTABLISHED
     TCP 127.0.0.1:3306 コンピュータ名:49190 ESTABLISHED
     TCP 127.0.0.1:3306 コンピュータ名:49192 ESTABLISHED
     TCP [::]:3306 コンピュータ名:0 LISTENING
   この結果からすると、123.456.7.9:3306は開いていないので接続できないのか?

7)上記1)のサーバインスタンスのHostがlocalhostとなっているので別のマシンから接続できないのではないかと考え、HostにサーバーマシンのIPアドレス(Host:123.456.7.9)を設定したが、インスタンスを作れなかった。
  インスタンス名:IPMySQL
  Host:123.456.7.9
2.サーバマシンと異なるマシン(123.456.7.10)でコマンドプロンプトで下記コマンドを入力
  mysql -uuser3 ?h123.456.7.17 -p
  
  これに対して、以下のエラーメッセージが出力され、サーバへの接続失敗。
  ERROR 2003(HY000):Can't connect to MySQL server on '123.456.7.9'(10060)
  ちなみに、user3はMySQLサーバにアカウントuser3/123.456.7.10として、登録済み。


3.Manage Service InstancesのConnectionタブ
  このタブの"Remote Manegement"が"Do not use remote management"となっていて、ほかのオプションは選択できない状態となっています。このオプションの意味は何ですか?
  Workbenchやmysql-5.5.11-win32.msiを使ってインストールした場合、サーバと異なるマシンのホストからサーバーへの接続はできないのでしょうか?

大変長文となりましたが、ぜひ解決方法を教えてください。

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




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