私はUbuntu & Net-beansを使用しています。 NetbeansのウィザードからJavaデスクトップデータベースアプリケーションを作成します。私はそのサービス→データベースから&実行クエリを開くことができるMySQLデータベースを使用しています。私はそれを実行するとき、私は以下の例外があります。私がきれいにするとき&プロジェクトをビルドjarファイル、同じ例外を実行します。私は同じマシンのデュアルブート方法でWindowsをインストールして、同じMySQLデータベース& Javaを持っている。 Ubuntu Netbeansを使ってjarファイルを実行すると、Windowsで完全に実行され、データベースのデータが表示されます。私は他の方法もやった、私は同じデータベースを使用してWindows Netbeansで同じJavaアプリケーションを作成し、それはNetbeansとjarファイルの両方で完璧に動作します。しかし、私がUbuntuで実行しようとすると、Netbeansの両方で& jarファイルが以下の例外を表示します。DatabaseException CommunicationsException:通信リンクのエラー
[TopLinkの情報]:2012年1月29日11:16:58.898 - のServerSession(285416048) - TopLinkでは、バージョン:OracleのTopLinkのエッセンシャル - 2.0.1(b09d-FCSを構築(2007年12月6日) ) 2012年1月29日11時16分59秒AM org.jdesktop.application.Application $実験1 SEVERE: - 2.0 例外[TOPLINK-4002](オラクルのTopLink Essentialsの:Applicationクラスcustomerrecordsu.CustomerRecordsUAppは ローカル例外スタックの起動に失敗しました。 .1(ビルドb09d-fcs(12/06/2007))):oracle.toplink.essentials.exceptions。
サーバに最後に送信されたパケットは、0ミリ秒前です。ドライバはサーバからパケットを受信していません。 エラーコード:0 oracle.toplink.essentials.exceptions.DatabaseException.sqlExceptionで (DatabaseException.java:305)によって引き起こさ
... lot of more
:java.net.SocketExceptionが:に接続できませんSOCKSプロキシ:接続がjava.net.SocksSocketImpl.connectで を拒否した(SocksSocketImpl.java:427)
... lot of more
以下はコメントを削除する 'my.cnf'ファイルの一部です。以下
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
socket = /var/run/mysqld/mysqld.sock
port = 3306
skip-external-locking
bind-address = 127.0.0.1
persistance.xmlファイルの一部
<property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/MyBusinessRecords"/>
<property name="toplink.jdbc.user" value="root"/>
<property name="toplink.jdbc.password" value="password"/>
あるNetbeansのウィザードJPA、&トップリンクを使用しています。私は純粋なJavaによってウィザードなしでプログラムを作っています。期待通りにUbuntuで完全に動作し、データベースのデータを表示します。そのプログラムは以下の通りです。上と下で同じJava MySQL connector.jarを使用します。
public static void main(String[] args) {
Connection con = null;
Statement st = null;
ResultSet rs = null;
int id = 0;
String name = null;
try {
String url = "jdbc:mysql://localhost:3306/MyBusinessRecords";
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection(url, "root", "5843");
if (con != null) {
System.out.println("A database connection has been establised!");
st = con.createStatement();
rs = st.executeQuery("select * from COUNTRIES");
while(rs.next()){
id = rs.getInt(1);
name = rs.getString(2);
System.out.println("id = " + id + " Name = " + name);
}
}
} catch (Exception e) {
System.out.println("Problem" + e.toString());
} finally {
if (con != null) {
try {
rs.close();
st.close();
con.close();
} catch (Exception e) {
System.out.println(e.toString());
}
con = null;
}
}
}
これは
Javaのバージョン "1.7.0_01" は、Java HotSpot(TM)64ビットサーバーVM(21.1-B02、混合モードを構築する) のUbuntu 11.10私のシステムです。 OSの種類64ビット MySQLのバージョン - MySQLの5.1.58-1ubuntu1 のMySQLクライアントのバージョン5.1.58ソケット :私はこのサイトにQ &もっとして15を読ん/var/run/mysqld/mysqld.sock
同じ質問があったが、今それは私を助けた。私を助けてください。
IP/Portで間違っているようです。 pingして確認しましたか? – kosa
PING 127.0.0.1(127.0.0.1)56(84)バイトのデータをpingするとき。 127.0.0.1から64バイト:icmp_req = 1 ttl = 64 time = 0.031ms 127.0.0.1から64バイト:icmp_req = 2 ttl = 64 time = 0.037ms 127.0.0.1から64バイト:icmp_req = 3 ttl = 64時間= 0.036 ms – catmantiger
ポートについてはどうですか?それは開いていますか? – kosa