[RISOLTO]java e mysql!

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

[RISOLTO]java e mysql!

Messaggio da blackman85 »

Salve a tutti. Ho un problema che non sono riuscito a risolvere. Ho scaricato eclipse e mysql-connector. Ho configurato il file my.cnf e avviato mysql. Qui ho già notato una cosa strana se faccio:

Codice: Seleziona tutto

mysql -h localhost -u user -p
si collega correttamente, mentre se faccio:

Codice: Seleziona tutto

mysql -h 127.0.0.1 -u user -p
mi dice:

Codice: Seleziona tutto

ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
e non capisco perchè! Nel file host è correttamente configurato e so che localhost equivale a dire 127.0.0.1 (loopback). Vabbè per il momento ho lasciato perdere questa sottigliezza e sono andato avanti. Ho aperto eclipse ho aggiunto al build path il file mysql-connector-java-5.1.7-bin.jar ed ho lanciato un piccolo programma per effettuare la connesione al database mysql (attivo) Quando si prova a collegare ( la stringa che ho messo in url è "jdbc:mysql://localhost/test") mi da il seguente errore:

Codice: Seleziona tutto

Communications link failure
Last packet sent to the server was 0 ms ago.
Sono tre giorni che cerco la soluzione sono andato in giro per la rete ma non ho trovato niente!! [-(
A questo punto mi viene in mente una sola cosa non è che potrebbe essere un problema di firewall o di configurazione sbagliata di my.cnf??
Aspetto un vostro aiuto come sempre.
Grazie :thumbright:
Ultima modifica di blackman85 il mar 31 mar 2009, 21:56, modificato 1 volta in totale.

Avatar utente
sardylan
Linux 3.x
Linux 3.x
Messaggi: 993
Iscritto il: mar 24 apr 2007, 9:21
Nome Cognome: Luca Cireddu
Slackware: current 64bits
Kernel: 3.16
Desktop: KDE 4.14
Distribuzione: Debian - CLFS
Località: Cagliari
Contatta:

Re: java e mysql!

Messaggio da sardylan »

blackman85 ha scritto: [...] so che localhost equivale a dire 127.0.0.1 (loopback). [...]
localhost è un hostname!! Dipende da come hai configurato /etc/hosts... Può darsi che MySQL apra la porta 3306 bindando l'indirizzo della scheda di rete locale!! Prova a configurarlo direttamente con 127.0.0.1
blackman85 ha scritto: [...] Ho aperto eclipse ho aggiunto al build path il file mysql-connector-java-5.1.7-bin.jar ed ho lanciato un piccolo programma per effettuare la connesione al database mysql (attivo) Quando si prova a collegare ( la stringa che ho messo in url è "jdbc:mysql://localhost/test") mi da il seguente errore:

Codice: Seleziona tutto

Communications link failure
Last packet sent to the server was 0 ms ago.
[...]
Sempre per lo stesso motivo!!!

O gli imposti di bindare TUTTI gli indirizzi, oppure usa 127.0.0.1 (se lo vuoi solo in locale) e via!!

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: java e mysql!

Messaggio da blackman85 »

localhost è un hostname!! Dipende da come hai configurato /etc/hosts...
Per quanto riguarda il file hosts penso di averlo configurato correttamente comunque il contenuto è questo:

Codice: Seleziona tutto

127.0.0.1       localhost
Può darsi che MySQL apra la porta 3306 bindando l'indirizzo della scheda di rete locale!! Prova a configurarlo direttamente con 127.0.0.1
Se ti stai riferendo a MySQL non ho capito come fare per configurarlo! Puoi essere più chiaro?

A propostito grazie per la risposta!! :thumbright:

Avatar utente
sardylan
Linux 3.x
Linux 3.x
Messaggi: 993
Iscritto il: mar 24 apr 2007, 9:21
Nome Cognome: Luca Cireddu
Slackware: current 64bits
Kernel: 3.16
Desktop: KDE 4.14
Distribuzione: Debian - CLFS
Località: Cagliari
Contatta:

Re: java e mysql!

Messaggio da sardylan »

Beh... Esattamente non so come fare!!! :roll: :D
Su Apache c'è la direttiva Listen!! Su MySQL non so!!! Magari c'è qualcosa di equivalente...
Sicuramente trovi tutti in /etc/my.cnf ;) Nel medium c'è questo:

Codice: Seleziona tutto

# The MySQL server
[mysqld]
port		= 3306
socket		= /var/run/mysql/mysql.sock
Che sicuramente indica di bindare su tutte le interfacce...

Ora che ci penso mi capitava un errore simile... Prova a controllare che tutte le interfacce abbiano un indirizzo IPv4 configurato...

Comunque puoi controllare con netstat quali connessioni sono aperte e da quali processi!!! Così vedi come vanno le cose ;)

/etc/hosts va bene!!
:) :)

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: java e mysql!

Messaggio da conraid »

Per l'errore di connessione guarda se in my.cnf o in rc.mysql hai attivato l'opzione --skip-networking
Se sì disabilitala (anche se io preferisco mantenerla se non ho bisogno di connessioni remote)

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: java e mysql!

Messaggio da blackman85 »

Per l'errore di connessione guarda se in my.cnf o in rc.mysql hai attivato l'opzione --skip-networking
Se sì disabilitala (anche se io preferisco mantenerla se non ho bisogno di connessioni remote)
Ok l'ho disabilitata anche se non penso serva farlo perché eclipse e mysql stanno sulla stessa macchina quindi non c'è una connessione remota. Comunque infine l'ho disabilitata ma l'errore rimane! Ma sicuro che non sia un problema di firewall?
/etc/hosts va bene!!
Se vabbene perchè questi comandi mi restituiscono il seguente output?

Codice: Seleziona tutto

# mysqlcheck -h localhost mysql
mysql.columns_priv                                 OK
# mysqlcheck -h 127.0.0.1 mysql
mysqlcheck: Got error: 2003: Can't connect to MySQL server on '127.0.0.1' (111) when trying to connect
# mysqlcheck -h 127.0.0.1:3306 mysql
mysqlcheck: Got error: 2003: Can't connect to MySQL server on '127.0.0.1:3306' (111) when trying to connect
# mysqlcheck -h localhost:3306 mysql
mysqlcheck: Got error: 2003: Can't connect to MySQL server on 'localhost:3306' (111) when trying to connect
:shock: :shock: :shock: :shock: Ma perché non riconosce localhost come 127.0.0.1?? E poi localhost:3306 perché non funziona, visto che mysql è attivo sulla porta 3306!!!
Mi piacerebbe tanto sapere quando do il comando "mysql -h localhost" qual è l'indirizzo ip che prende visto che va a buon fine!! :shock: :shock: :shock:
Spero in un vostro aiuto, non so come risolvere!! Grazie a tutti!

Avatar utente
sardylan
Linux 3.x
Linux 3.x
Messaggi: 993
Iscritto il: mar 24 apr 2007, 9:21
Nome Cognome: Luca Cireddu
Slackware: current 64bits
Kernel: 3.16
Desktop: KDE 4.14
Distribuzione: Debian - CLFS
Località: Cagliari
Contatta:

Re: java e mysql!

Messaggio da sardylan »

Non è che per caso specificando localhost (senza porta) utilizza il socket UNIX /var/run/mysql/mysql.sock???

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: java e mysql!

Messaggio da conraid »

blackman85 ha scritto:
Per l'errore di connessione guarda se in my.cnf o in rc.mysql hai attivato l'opzione --skip-networking
Se sì disabilitala (anche se io preferisco mantenerla se non ho bisogno di connessioni remote)
Ok l'ho disabilitata anche se non penso serva farlo perché eclipse e mysql stanno sulla stessa macchina quindi non c'è una connessione remota. Comunque infine l'ho disabilitata ma l'errore rimane! Ma sicuro che non sia un problema di firewall?
Anche a me da quell'errore, togliendo lo skip no.

Per connessione "remota" si intende anche una connessione "locale" che non usi la modalità socket. Nel senso che se un software non usa un socket (come dovrebbe) per le comunicazioni locali usa la connessione su una porta tcp. Potrei anche dire una cavolata, ma l'errore mi sembra quello.

Certo che se blocci i pacchetti local-to-local allora potrebbe essere sì un problema di firewall, ma questo lo sai tu se l'hai configurato in un certo modo o no.

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: java e mysql!

Messaggio da blackman85 »

Non è che per caso specificando localhost (senza porta) utilizza il socket UNIX /var/run/mysql/mysql.sock???
Si utilizza questo socket però non ho capito cosa vuoi dire!
Certo che se blocci i pacchetti local-to-local allora potrebbe essere sì un problema di firewall, ma questo lo sai tu se l'hai configurato in un certo modo o no.
blackman85 ha scritto:
Per l'errore di connessione guarda se in my.cnf o in rc.mysql hai attivato l'opzione --skip-networking
Se sì disabilitala (anche se io preferisco mantenerla se non ho bisogno di connessioni remote)
Ok l'ho disabilitata anche se non penso serva farlo perché eclipse e mysql stanno sulla stessa macchina quindi non c'è una connessione remota. Comunque infine l'ho disabilitata ma l'errore rimane! Ma sicuro che non sia un problema di firewall?
Anche a me da quell'errore, togliendo lo skip no.

Per connessione "remota" si intende anche una connessione "locale" che non usi la modalità socket. Nel senso che se un software non usa un socket (come dovrebbe) per le comunicazioni locali usa la connessione su una porta tcp. Potrei anche dire una cavolata, ma l'errore mi sembra quello.

Certo che se blocci i pacchetti local-to-local allora potrebbe essere sì un problema di firewall, ma questo lo sai tu se l'hai configurato in un certo modo o no.
Il fatto è che il firewall non l'ho proprio configurato perché non so come fare....Ho disabilitato la voce #skip-network adesso potresti dire come configurare il firewall? Però secondo me non è questo il problema in quanto mi dice che non trova proprio il server non che la connessione è stata rifiutata!!

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: java e mysql!

Messaggio da conraid »

Se non l'hai configurato non hai nemmeno bloccato niente.
Posta l'output di

Codice: Seleziona tutto

# netstat -putane
# ping 127.0.0.1
come ti dicevo comunque a me quell'errore lo da con quell'opzione (che avevo sia in my.cnf sia in rc.mysql)

Avatar utente
blackman85
Linux 2.x
Linux 2.x
Messaggi: 333
Iscritto il: dom 22 giu 2008, 14:41
Slackware: 13.1 x86_64
Kernel: 2.6.33.4
Desktop: kde 4.4

Re: java e mysql!

Messaggio da blackman85 »

Finalmente ho risolto!! Nel file "/etc/rc.d/rc.mysql" quando lancia il comando "mysqld_safe" gli da l'opzione --skip-network, quindi potevo configurare my.cnf quanto volevo ma non sarebbe mai andato!! Alla fine è bastata una piccola modifica al file "rc.mysql"
Grazie di nuovo a tutti!!
:thumbright: :thumbright: :thumbright: :thumbright: :thumbright:

Rispondi