Daten werden nicht komplett eingetragen

Hi!

Die Situation ist folgende:
Ich habe eine Tabelle “Wort” mit ca. 500 Einträgen. Dazu habe ich eine Tabelle “Zähler”, in der u.a. 2 Werte aus der Tabelle “Wort” eingetragen werden (also fk_wort und fk_wort2). Was genau gemacht wird, ist nicht so wichtig.
Nun mein Problem:
Ich will nun, dass alle Wörter miteinander verglichen und in die Tabelle “Zähler” eingetragen werden. Jedoch bricht das Eintragen ab, nachdem die ersten 64 Wörter miteinander verglichen & eingetragen wurden. Aufgefallen ist mir dabei noch, dass diese Datenbank dabei eine Gesamtgröße von 750 KiB hatte.
Dies geschieht im PHPMyAdmin-SQl.
An meinem Rechner zuhause hab ich das “einfache” SQL (also ohne alles andere) und da werden problemlos alle Einträge getätigt.
Leider komme ich erst nächste Woche wieder an den Rechner dran, auf dem ich das Problem habe, von daher wäre ich sehr dankbar, wenn ihr mir schon so sagen könntet, wo das Problem liegen könnte.

MfG Tsubasa

Irgendwelche Fehlermeldungen?

ich glaub die Ausführung eines Skripts darf auf bplaced nicht länger als 12 Sekunden dauern sonst brichts ab (weiß ja net wie lang deins dauert :slight_smile: )

grüße

Hi!

Es gab eine Fehlermeldung, aber ich komme erst nächste Woche wieder an den Rechner dran und kann deshalb die Fehlermeldung jetzt hier nicht posten (hatte auch gehofft, dass ich die Lösung irgendwo finde und diese deshalb nicht kopiert). :frowning:
Bei mir läuft immer ein Java-Programm und hab so ca. 3 Datenbank-Einträge pro Sekunde. Wie lange das Programm nun genau bis zum Absturz läuft, habe ich nicht gemessen, aber es waren schon ein paar Minuten.

MfG Tsubasa

Hi!

Ich habe jetzt nochmal den Durchlauf ausprobiert und nach 2:40 Minuten erhielt ich diese Fehlermeldung:

15:16:41,640 WARN JDBCExceptionReporter:100 - SQL Error: 0, SQLState: 08S01
15:16:41,640 ERROR JDBCExceptionReporter:101 - Communications link failure

Last packet sent to the server was 0 ms ago.
Exception in thread “main” org.hibernate.exception.JDBCConnectionException: Cannot open connection
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:97)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:142)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:85)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1353)
at app.music.MusicManager.getMusicById(MusicManager.java:121)
at app.similarity.SimilarityManager.addSimilarity(SimilarityManager.java:45)
at app.dailyUpdates.ChargeSimilarity.charge(ChargeSimilarity.java:82)
at app.dailyUpdates.Updates.updates(Updates.java:10)
at util.HibernateUtil.getSession(HibernateUtil.java:46)
at app.score.DailyScoreManager.removeAllFromDailyScore(DailyScoreManager.java:100)
at app.dailyUpdates.DailyUpdates.(DailyUpdates.java:14)
at app.dailyUpdates.DailyUpdates.main(DailyUpdates.java:18)
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
at sun.reflect.GeneratedConstructorAccessor20.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2120)
at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:723)
at com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:46)
at sun.reflect.GeneratedConstructorAccessor15.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:133)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)
… 12 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The driver was unable to create a connection due to an inability to establish the client portion of a socket.

This is usually caused by a limit on the number of sockets imposed by the operating system. This limit is usually configurable.

For Unix-based platforms, see the manual page for the ‘ulimit’ command. Kernel or system reconfiguration may also be required.

For Windows-based platforms, see Microsoft Knowledge Base Article 196271 (Q196271).
at sun.reflect.GeneratedConstructorAccessor20.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2043)
… 24 more
Caused by: java.net.BindException: Address already in use: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.(Unknown Source)
at java.net.Socket.(Unknown Source)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.(MysqlIO.java:284)
… 25 more

Ich wäre sehr dankbar, wenn mir jemand helfen kann.

MfG Tsubasa

Also im phpmyadmin hab ich noch nie was von java gelesen :slight_smile:

Hi!

Also Java trägt Daten in MySQL ein. Und dieses MySQL gehört zu PHPMyAdmin.

MfG Tsubasa

also hat das ganze nichts mit phpmyadmin zu tun sondern mit java und deiner fehler sind auch von java und haben nichts mit php/mysql zu tun, seh ich das richtig? ^^

[quote=“Tsubasa”]
15:16:41,640 ERROR JDBCExceptionReporter:101 - Communications link failure

Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The driver was unable to create a connection due to an inability to establish the client portion of a socket.

This is usually caused by a limit on the number of sockets imposed by the operating system. This limit is usually configurable.

For Unix-based platforms, see the manual page for the ‘ulimit’ command. Kernel or system reconfiguration may also be required.

Caused by: java.net.BindException: Address already in use: connect[/quote]

reicht dir das net als Info?

Hi!

Ich habe eher das Gefühl, dass es eine Einschränkung der MySQL-DB in PHPMyAdmin ist, die mir hier Probleme bereitet. Wie ich ja schon erwähnte, läuft alles problemlos, wenn ich das “einfache” MySQL nehme (also den MySQL Server 5.1 außerhalb der PHPMyAdmin-Umgebung).
Und ich bin auf das PHPMyAdmin angewiesen, weil das Programm noch größer ist, im Internet laufen können soll und auch von dort u.U. Einträge in die DB vorgenommen werden.
Kannst du mir dann wenigstens sagen, wo ich die Änderungen vornehmen kann?

MfG Tsubasa

ich glaub hier gibts noch klärungsbedarf

die logfile die du gepostet hast hat nichts mit phpmyadmin zu tun, phpmyadmin ist ein frontend für MySql und läuft mit php/html/css - java hat damit nichts zu tun

also sag bitte nochmal wo genau hier phpmyadmin zum einsatz kommt

Du versuchst dich von einem PC zuhause mit der Datenbank hier zu verbinden. Das geht schlichtweg nicht.

fsockopen() is erst für das nächste große update geplant, wenn überhaupt :slight_smile:

Hi!

@ michi7x7: Für den Test zuhause hatte ich die Daten exportiert und auf meinem Rechner in MySQL importiert. Ich wollte da nur nachschauen / testen, ob der Fehler in der Java-Datei liegt.

Die Daten sollen in einer MySQL-DB gespeichert werden. Hierfür wird das MySQL aus dem PHPMyAdmin genutzt.

MfG Tsubasa

ich glaube wir verstehen uns nicht

wenn du phpmyadmin sagst geht es um manuelle Abläufe (außer du hast dir ein makro geschrieben bla - aber wohl kaum)

dein java was auch immer hat also wohl nichts mit phpmyadmin am hut

zumindest kenne ich keine API für phpmyadmin (wär ja auch quatsch um 4 1/2 ecken mit mysql zu arbeiten)

Hi!

Java kommuniziert nur mit MySQL. Der Rest hat nix mit Java zu tun.
Aber ich verstehe halt nicht, warum die Daten nicht komplett eingetragen werden, wenn ich das MySQL aus der phpMyAdmin-Umgebung nutze. Das ist ja mein eigentliches Problem.
Wen ich jetzt hier im falschen Forum sein sollte, dann entschuldige ich mich dafür. Ich hatte halt nur gedacht, dass ich irgendwas aus der phpMyAdmin-Umgebun ändern muss und habe deshalb hier nachgefragt.
Und wie gesagt: Als ich die Daten exportiert hatte und es zuhause getestet habe, gings ja.

MfG Tsubasa

also hast du jetzt ein problem mit java oder mit phpmyadmin?

phpmyadmin spuckt idR fehlermeldungen aus wenn etwas nicht klappt: bitte posten

[size=150]Du kannst dich nicht von deinem PC zuhause mit der Datenbank hier verbinden!!!
[/size]
Und phpMyAdmin ist nur ein Tool, das sich mit der MySQL-Datenbank verbindet und SQL-Kommandos auf der Datenbank ausführt.

Hi!

@ michi7x7: Ich hatte doch schon mal geschrieben, dass ich dort mein eigenens SQL genutzt habe, dass ich auf meinem Rechner installiert habe.

@ Morpheus: Ich vermute, dass das Problem im phpMyAdmin liegt, dass ich also z.B. irgendwelche Rechte für die SQL-DB nicht habe (oder nicht genügend, z.B. Speicherkapazität o.ä.). Ich komme wahrscheinlich morgen wieder an den Rechner dran und schaue nochmal wegen Fehlermeldungen nach (die dürften in den logfiles dann sein, oder?). Hatte beim letzten Mal nur auf die Fehlermeldung geachtet, die ich in der Java-Konsole bekommen hatte.

MfG Tsubasa

wenn du in phpmyadmin etwas änderst und es nicht klappt spuckt es dir direkt einen fehler aus
brauchst keine logfiles

vielleicht sagst auch noch mal genau was du vorhast
was tust du mit java und wo kommt phpmyadmin ins spiel?

Hi!

Ich habe eine MySQL-Datenbank in phpMyAdmin integriert, u.a. mit den Tabbelen “Wort” und “Zähler”. In der Tabelle Wort stehen alle möglichen Wörter drin, in der Tabelle Zähler stehen 2 Fremdschlüssel zu der Tabelle Wort (also fk_wort und fk_wort2) sowie eine Spalte, in der gezählt wird, wie viele gemeinsame Buchstaben die haben.
Das Java-Programm nimmt sich nun immer 2 Wörter aus der Tabelle Wort, zählt die Anzahl der gleichen Buchstaben und trägt das dann in die Tabelle Zähler ein. Nachdem die ersten 64 Wörter miteinander verglichen wurden, bricht das Programm aber mit der Fehlermeldung von vorheriger Seite ab. Dabei hätten noch viel mehr Vergleiche / Zählungen erfolgen müssen.

MfG Tsubasa

die Java-Fehler klingen für mich eher nach initialisierungsfehlern als nach plötzlich auftauchenden ungereimtheiten

vielleicht postet mal 's skript zu?
passiert es immer bei 64?
was ist denn das 64. (65. ?) wort? was passiert bei schritt 64 (65)?