# JDBC-Performance extrem schlecht - Konfigurationsfehler?



## mmm (2. Aug 2007)

Hallo,

ich beobachte zur Zeit ein seltsames Phänomen:

Wenn ich eine etwas komplizierte SQL-Anfrage (ein 32-dimensionales Kreuzprodukt über eine Tabelle mit ca. 40.000 Einträgen, wobei das Resultat ziemlich schnell die leere Menge ergeben sollte) über JDBC absetze, dann dauert das ewig und drei Tage, bis das fertig ist (durchaus mehrere Minuten, teilweise >10 Minuten oder noch länger).

Wenn ich allerdings das Statement vor der Abfrage nach System.out ausgebe und dieses Statement dann mit phpmyadmin ausführe (copy&paste in den Browser), ist es in 0,15 Sekunden durch - obwohl parallel die Java-Anfrage  noch lange weiter rödelt ;-(

Ist das irgendwie erklärbar? 

Ich wäre euch sehr dankbar, wenn ihr mir einen Tipp geben könntet. Als Datenbank kommt mysql 5.0.15 zum Einsatz (xampp-Paket für den mac), ich benutze PreparedStatements und mysql-connector-java-5.0.5-bin.jar. 

Vielen Dank,

mmm


----------



## SlaterB (2. Aug 2007)

schön wäre ein Datenbank-Log oder ein nebenbei geöffnetes Tool,
welches laufende Anfragen analysiert,

kann dazu aber nix genaues nennen


----------



## tuxedo (2. Aug 2007)

Naja, wenn es in phpmyadmin schneller läuft dann isses ja irgendwas mit jdbc... Hast du's mal testweise ohne prepared statement ausprobiert? am besten mal ein minimalbeispiel basteln.

- Alex


----------



## ARadauer (2. Aug 2007)

@SlaterB: würd mich interessieren, welche tools du meinst? gibts sowas, wo ich laufend sehe, was die db gerade macht?


----------



## SlaterB (2. Aug 2007)

ich meine z.B. Toad, was ich auf der Arbeit mit einer Oracle-DB verwende,
(ich selber habe freilich noch nichts analysiert, nur gesehen  )

http://www.toadsoft.com/
keine Ahnung inwiefern das frei benutzbar und für MySQL vorhanden ist


----------

