mysql:9402
From: Naoya Mihara <Naoya Mihara <strat_caster@xxxxxxxxxx>>
Date: Sat, 22 May 2004 20:29:50 +0900 (JST)
Subject: [mysql 09402] 外部 MySQL サーバに JDBC 接続失敗(新参者)
原と申します。JAVAとLINUX&MYSQLの環境で勉強中です。 よろしくお願いいたします。 他のMLでも質問中なのですが、 WindowsにインストールしているTomcatから、 MySQLを単独で走らせているLinuxサーバに サーブレットでJDBC接続を試みているのですが うまくいきません。 ●サーブレットのソース;DB接続箇所 Connection con =null; (中略) try{ Class.forName("org.gjt.mm.mysql.Driver"); con = DriverManager.getConnection("jdbc:mysql://Linuxサーバの アドレス/DB名?user=ユーザ名&password=パスワード"); (中略) con.close(); }catch(ClassNotFoundException e){ out.println("Couldn't load database driver: " + e.getMessage()); }catch(SQLException e){ out.println("SQLException caught: "+ e.getMessage()); } ●サーブレット実行時のエラーメッセージ SQLException caught: Cannot connect to MySQL server on (Linuxサーバの アドレス):3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.net.SocketException) 2番目のcatch文が実行されているようです。 ちなみに、TelnetでLinuxサーバにログインし、同じユーザ名とパスワード ではMySQLにログインできます。 my.cfgではskip-networkingをコメントアウトし、再起動後 mysqladmin variables | grep skip-networkingで確認すると確かにOFFに なっています。 又netstat -a | grep mysqlで LISTEN unix 2 [ ACC ] STREAM LISTENING 280744 /tmp/mysql.sock という結果も確認しています。 接続するユーザは grant all privileges on DB名.* to user@"%" identified by 'password' with grant option; として作成しています。 又/etc/servicesには次の1行を追加してみました。 mysql 3306/tcp # MySQLServer (現在の環境) WindowsXP:j2sdk-1_4_1_03、Tomcat5、Eclipse2.1.2 TurboLinuxServer7:MySQL4.0.13 過去ログも一通り目を通したつもりなのですが、行き詰っています。 同じ環境で成功している方がいらっしゃいましたらご教示下さい。 よろしくお願いいたします。
-> 9402 2004-05-22 20:29 [Naoya Mihara <strat_] 外部 MySQL サーバに JDBC 接続失敗(新参者) 9404 2004-05-22 23:32 ┗["TAKAHASHI, Tomohiro] 9405 2004-05-22 23:51 ┗[Naoya Mihara <strat_] 9406 2004-05-23 00:23 ┗["TAKAHASHI, Tomohiro] 9407 2004-05-23 00:40 ┗[Naoya Mihara <strat_] 9408 2004-05-23 00:50 ┣[Naoya Mihara <strat_] 9410 2004-05-24 01:26 ┃┣["KATAYOSE hakuo" <ka] 9412 2004-05-24 01:32 ┃┃┗["KATAYOSE hakuo" <ka] 9411 2004-05-24 01:27 ┃┗[とみたまさひろ <tomm] 9409 2004-05-24 01:13 ┗["KATAYOSE hakuo" <ka]