Ogni volta che tento di usare JDBC per connettersi a un server MySQL locale (che funziona su tonnellate di altri client SQL), ma non si collega a tutti e ottengo un'eccezione:
- Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications Link fallimento
- .... stack trace ....
- causati da: java.net. SocketException: argomento non valido: connect
più dettagliate informazioni:
Ho un server MySQL locale che esegue che è possibile connettersi a con l'utilizzo le seguenti informazioni:
- indirizzo: localhost o 127.0.0.1 (entrambi lavoro)
- porto: 3306
- e il mio nome utente/password/db citarne
Utilizzando le applicazioni: HeidiSQL, phpMyAdmin, MySQL Workbench e mysqladmin
Esecuzione mysqladmin versione conferma che il server è attivo, lavorando, ed ha TCP/IP abilitato.
Fare variabili mysqladmin indica che "skip_networking" è disattivato (vedere sotto per la configurazione completa).
Il log MySQL non mostra nulla di straordinario (anche di seguito).
Utilizzo il connettore JDBC v5.1.15, mysql-connector-java-5.1.15-bin.jar. È nel mio percorso di classe del progetto con Eclipse.
Tutti i firewall di Windows 7 (Ultimate, 64 bit se è importante) sono disattivati.
Eppure ottengo ancora l'errore di traccia stack come mostrato di seguito. Non posso per la vita di me capire cosa c'è che non va quando tutto il resto è in grado di connettersi bene ...
Ho cercato di includere tutte le informazioni rilevanti di seguito. Spero che sia solo qualcosa di semplice e stupido che ho trascurato e non riesco a trovare perché sto cercando troppo difficile ... ma eh chi lo sa:/heh.
Ho provato tutto quello che sono stato in grado di trovare in altre domande simili online ma niente sembra funzionare (incl.https://stackoverflow.com/a/2985169/211750, https://stackoverflow.com/a/2103092/211750, https://serverfault.com/questions/89955/unable-to-connect-to-mysql-through-jdbc-connector-through-tomcat-or-externally e altri)
mio codice di prova:
package sqltest;
import com.mysql.jdbc.Driver;
import java.sql.DriverManager;
import java.util.Properties;
public class main {
public static void main(String[] args) throws Exception {
String url = "jdbc:mysql://localhost:3306/dbname?user=user&password=****&";
Driver driver = (Driver) Class.forName("com.mysql.jdbc.Driver").newInstance();
DriverManager.getConnection(url);
}
}
traccia stack: http://pastebin.com/qv332y86
variabili MySQL Dump: http://pastebin.com/merSEDdD
my.ini: http://pastebin.com/EWZX2enz
MySQL mysqladmin versio n:
Server version 5.5.20-log
Protocol version 10
Connection localhost via TCP/IP
TCP port 3306
Uptime: 1 min 37 sec
Threads: 1 Questions: 17 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.175
log di MySQL:
120314 21:37:20 [Note] Plugin 'FEDERATED' is disabled.
120314 21:37:20 InnoDB: The InnoDB memory heap is disabled
120314 21:37:20 InnoDB: Mutexes and rw_locks use Windows interlocked functions
120314 21:37:20 InnoDB: Compressed tables use zlib 1.2.3
120314 21:37:20 InnoDB: Initializing buffer pool, size = 128.0M
120314 21:37:20 InnoDB: Completed initialization of buffer pool
120314 21:37:20 InnoDB: highest supported file format is Barracuda.
120314 21:37:20 InnoDB: Waiting for the background threads to start
120314 21:37:21 InnoDB: 1.1.8 started; log sequence number 1619921
120314 21:37:21 [Note] Event Scheduler: Loaded 0 events
120314 21:37:21 [Note] wampmysqld: ready for connections.
Version: '5.5.20-log' socket: '' port: 3306 MySQL Community Server (GPL)
120314 21:38:02 [Note] wampmysqld: Normal shutdown
120314 21:38:02 [Note] Event Scheduler: Purging the queue. 0 events
120314 21:38:02 InnoDB: Starting shutdown...
120314 21:38:02 InnoDB: Shutdown completed; log sequence number 1619921
120314 21:38:02 [Note] wampmysqld: Shutdown complete
http://stackoverflow.com/questions/8216713/java-net-socketexception-invalid-argument-connect sembra suggerire una problema con IPV6. E 'quello che stai usando? –
+1: domanda ben scritta. Inoltre: hai provato a cambiare la stringa di connessione su 127.0.0.1 come [questo commento] (http://stackoverflow.com/questions/8216713/java-net-socketexception-invalid-argument-connect#comment10343027_8347425) suggerisce? – Deco
Forse il firewall blocca le connessioni per java.exe? –