0

私はすべてを調べて、これで見つけることができたすべてを試したので、私の問題が何か奇妙な場合に備えて投稿を作成しています.

MySQL ワークベンチは、サーバーをクエリと更新に問題なく使用できます。通知機能は、サーバーが実行中であることを示しています。

Eclipse Juno と Kepler を使用してみましたが、Eclipse SQL State: 08S01 error 0 が発生しました。ゼロのパケットが正常に送信され、サーバーからの応答がありませんでした。ダウンロードの問題によるエラーが発生していないことを確認するために、Connector/J を再ダウンロードしました。改善しませんでした。

Netbeans に変更して、Eclipse やシステム上の何かだけではないことを確認しました。成功したパケットは送信されず、何も受信されませんでした。

サーバーがオンになっていて、正しいポートがコマンドプロンプトでtelnetによって使用されていることを確認するためにテストしました。予想どおり、パスワードの入力を求められます。Wire Shark を使用して、パケット データがどのように見えるかを確認しました。サーバーは正しいポートでリッスンしているように見え、MySQL ワークベンチは正しいポートを使用していました。

何が悪いのか途方に暮れています。Windows 7 にアップデートして、Vista でのドライバー認証の問題ではないことを確認しました。

NetBeans で次のコードを使用しました。

    import java.sql.*;
    import java.util.logging.Level;
    import java.util.logging.Logger;

    public class MySQLTest {
       public static void main(String[] args)
       {
                   try {
               Class.forName("com.mysql.jdbc.Driver").newInstance();
               System.out.println("1");
               Connection con =        DriverManager.getConnection("jdbc:mysql://127.0.0.0:3306/", "root", "wonderwoman");
                 System.out.println("2");
                 con.close();
               System.out.println("We made it!");
           } catch (SQLException ex) {
               Logger.getLogger(MySQLTest.class.getName()).log(Level.SEVERE, null, ex);
           } catch (ClassNotFoundException ex) {
               Logger.getLogger(MySQLTest.class.getName()).log(Level.SEVERE, null, ex);
           } catch (InstantiationException ex) {
               Logger.getLogger(MySQLTest.class.getName()).log(Level.SEVERE, null, ex);
           } catch (IllegalAccessException ex) {
               Logger.getLogger(MySQLTest.class.getName()).log(Level.SEVERE, null, ex);
           }
       }
    }

そして最終的にこれを受け取りました:

2013 年 10 月 22 日 8:59:20 PM rad.MySQLTest メイン SEVERE: null com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 通信リンク障害

サーバーに正常に送信された最後のパケットは 0 ミリ秒前です。ドライバーがサーバーからパケットを受信して​​いません。

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1121)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:357)
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2482)
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2519)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2304)
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
    at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at rad.MySQLTest.main(MySQLTest.java:21)
Caused by: java.net.ConnectException: Connection timed out: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at java.net.Socket.connect(Socket.java:528)
    at java.net.Socket.<init>(Socket.java:425)
    at java.net.Socket.<init>(Socket.java:241)
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:259)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:307)
    ... 15 more

他に何を試す必要がありますか?サーバーに到達しているように見えますが、すべてが跳ね返っています。私はファイアウォールをオフにしました。私はプロキシを使用していません。

4

5 に答える 5

0

こんにちは、まったく同じ問題が発生しました。これまで、MySQL サーバーは正常に netbeans に接続されていましたが、突然動作しなくなりました。bin フォルダーの my.config ファイルを確認したところ、何らかの理由でポートが 3306 から 6033 に変更されていたので、MySQL を新しいポート番号で再登録するか、構成ファイルのポート番号を変更してください。

于 2014-05-21T01:15:08.197 に答える
0

簡単に検索して、このビデオ チュートリアルを参照してください。あなたのニーズに役立つことを願っていますhttp://magentoexpertforum.com/showthread.php/10268-Connect-Netbean-to-MySQL

于 2014-04-28T09:00:51.697 に答える
0

ローカル マシンで mysql を実行していると思われる場合は、接続文字列にデータベース名を追加して、たとえば「jdbc:mysql://127.0.0.1:3306/databasename」 または「jdbc:mysql://localhost:3306」を試してください。 /databasename"
IP アドレスとして 127.0.0.0 を使用していますが、通常、localhost は127.0.0.0ではなく 127.0.0.1です。

于 2013-10-23T02:35:31.240 に答える