2017-10-07 3 views
0

私はこれを行う場合:JavaのJDBC:IPアドレスで接続しようとしMySQLNonTransientConnectionException

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/imageusers?autoReconnect=true&useSSL=false&relaxAutoCommit=true", "username", "password"); 

が、それは完全に正常に動作しますが、私はこれを行う場合:次に

Connection myConn = DriverManager.getConnection("jdbc:mysql://IP:3306/imageusers?autoReconnect=true&useSSL=false&relaxAutoCommit=true", "username", "password"); 

をそれは私に長いを与えますエラーのリスト:http://whatismyipaddress.com/

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. 
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 

私はこのウェブサイトからの私のIPアドレスを得ましたと別のファインダーでそれをダブルチェックし、それは同じだったので、私は間違ったIPアドレスを入れているとは思わない。また、Windowsファイアウォールのポート3306の例外を作成し、MySQLがWindowsのサービスアプリケーションで実行されているかどうかを確認しました。私はMySQLプログラムをオープンかつ実行していました。私は何をすべきか分からない。

答えて

0

あなたがここで提供しているのは、パブリックIPです。これをプライベートIPアドレスに変換しません。 DBサーバーに接続しているマシンからパブリックIPにpingを試みてください。それも動作しません。プライベートIPアドレスを使用することをお勧めします。

+0

はい私はipconfigを使用してコマンドプロンプトから取得したプライベートIPアドレスを使用し、192.168 ....などに従います。今は動作しますが、これはインターネットからアクセス可能ですか?私は別のコンピュータからこれを行うことができるように私はどうすればいいですか? – hse23

+0

ドメイン名を付けてDNSエントリを追加します。 –

+0

@ hse23 https://en.wikipedia.org/wiki/Port_forwarding –

関連する問題