Hallo
Ik ben aan het proberen om een mysql database (4.1) aan een java applicatie te kopelen. Ik heb de mysql-connector/J Versie 2.0.14 gedownload en als Library toegevoegd in JBuilder. Ik had eerst versie 3.x geprobeerd maar deze gaf contstant een error. Het probleem is dat ik geen verbinding kan krijgen met de database. Ik krijg geen errors vanuit java. Het vreemde is dat als ik een foute user en / of pass invoer ik de volgende melding krijg:
SQLException: Invalid authorization specification: Access denied for user 'thbnder'@'localhost' (using password: YES)
SQLState: 28000
VendorError: 1045
En als ik de het goede wachtwoord en gebruikers naam in voer ik de volgende melding krijg:
SQLException: Cannot connect to MySQL server on localhost:3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.lang.NumberFormatException)
SQLState: 08S01
VendorError: 0
Op een of ander manier kan ik dus wel een verbinding maken anders kan ie geen melding geven dat mijn login gegevens kloppen maar als deze wel kloppen zegt ie dat er geen server is. De user waarmee ik probeer in te loggen heeft de volgende rechten:
GRANT ALL PRIVILEGES ON *.* TO 'thunder'@'localhost' IDENTIFIED BY PASSWORD '17a6df113a05d957'
Ik weet in iedergeval zeker dat de MySQL server werkt want ik kom met php overal bij. De MySQL server draait ook gewoon op de standaard poort (3306). Dus ik denk dat het probleem toch nog ergens bij java ligt.
Heeft iemand een idee waar het probleem ligt?
De java code:
Ik ben aan het proberen om een mysql database (4.1) aan een java applicatie te kopelen. Ik heb de mysql-connector/J Versie 2.0.14 gedownload en als Library toegevoegd in JBuilder. Ik had eerst versie 3.x geprobeerd maar deze gaf contstant een error. Het probleem is dat ik geen verbinding kan krijgen met de database. Ik krijg geen errors vanuit java. Het vreemde is dat als ik een foute user en / of pass invoer ik de volgende melding krijg:
SQLException: Invalid authorization specification: Access denied for user 'thbnder'@'localhost' (using password: YES)
SQLState: 28000
VendorError: 1045
En als ik de het goede wachtwoord en gebruikers naam in voer ik de volgende melding krijg:
SQLException: Cannot connect to MySQL server on localhost:3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.lang.NumberFormatException)
SQLState: 08S01
VendorError: 0
Op een of ander manier kan ik dus wel een verbinding maken anders kan ie geen melding geven dat mijn login gegevens kloppen maar als deze wel kloppen zegt ie dat er geen server is. De user waarmee ik probeer in te loggen heeft de volgende rechten:
GRANT ALL PRIVILEGES ON *.* TO 'thunder'@'localhost' IDENTIFIED BY PASSWORD '17a6df113a05d957'
Ik weet in iedergeval zeker dat de MySQL server werkt want ik kom met php overal bij. De MySQL server draait ook gewoon op de standaard poort (3306). Dus ik denk dat het probleem toch nog ergens bij java ligt.
Heeft iemand een idee waar het probleem ligt?
De java code:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| try { // The newInstance() call is a work around for some // broken Java implementations Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch (Exception ex) { // handle the error } } try { //Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test?user=thunder&password=password"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test", "thunder", "password"); // Do something with the Connection } catch (SQLException ex) { // handle any errors System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); } |