• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Fehlermeldung von MySQL

hobibi

Kuhfänger
Registriert
21 November 2011
Beiträge
58
Alter
29
Diamanten
0
Minecraft
Hobibi
Hallo liebe Community,

Ich habe mich mal wieder an ein Plugin für unseren Server gewagt und jetzt besteht folgendes Problem. Wen ich den Server starte und das Plugin lädt dann erstellt er beim ersten laden die Config für die MySQL Datenbank bis dahin ist alles ok ich stoppe den Server und trage meine MySQL Daten ein und starte den Server und dann kommt in der Console folgende Fehlermeldung.

Fehlermeldung: http://hastebin.com/gebuwefeka.avrasm
Ban Classe: http://hastebin.com/fegogihasu.avrasm
MySQL Classe: http://hastebin.com/cakugawuku.avrasm

Hoffe jemand kann mir sagen wo der Fehler liegt damit ich ihn beheben kann
 
Zuletzt bearbeitet:
C

Chrisliebaer

Guest
So wie ich das sehe, sind das 2 Fehler. Der erste kommt daher, dass der Zielhost die Verbindung der Datenbank abweist. Vermutlich läuft nichtmal eine Datebank, versuch mal mit einem MySQL-Client eine Verbindung aufzubauen.
Caused by: java.net.ConnectException: Connection refused



Für den 2. Fehler wäre es interessant zu wissen, wie diese Methode aussieht (inklusive Zeilennummern und Werte aller Membervariablen zu diesem Zeitpunkt):
de.hobibi.chosenone.system.main.onEnable(main.java:66)



Außerdem sind bei dem Code SQL-Injections möglich und der Code auch nicht sauber formatiert.
 
Zuletzt bearbeitet von einem Moderator:

hobibi

Kuhfänger
Registriert
21 November 2011
Beiträge
58
Alter
29
Diamanten
0
Minecraft
Hobibi
Welchen MySQL Client emphielst du mir um dies zu testen.

Also die Methode um den Command zu laden sieht wie folgt aus

this.getCommand("ban").setExecutor(new BanClass(this));

das mit den MySQL Injections habe ich schon gesehen da ich noch nicht als so viel in MySQL gemacht habe. Ich wollte das Plugin auch noch nicht nutzen halt nur testen und hab dann gesehen das die MySQL noch nicht geht.
 
C

Chrisliebaer

Guest
Wenn das ein dedizierter Linux Server ist, dann musst du vermutlich "mysql" verwenden. Ich kenn aber dein Setup nicht, jedenfalls kann das Plugin keine Verbindung zur Datenbank aufbauen. Das kann nun mehrere Ursachen haben, vermutlich läuft auf dem Port keine Datenbank. Es wäre aber auch möglich, dass jemand mit den iptables rumgespielt hat und etwas vermurkst hat.

Und zu der NullpointerException habe ich gerade gesehen, dass die Exception ja in der BanClass auftritt. Okay, dann hast du aber scheinbar eine falsche Version hochgeladen. In Zeile 33 befindet sich kein Code.
 

hobibi

Kuhfänger
Registriert
21 November 2011
Beiträge
58
Alter
29
Diamanten
0
Minecraft
Hobibi
Ja die Zeilen umbrüchen sind bei hastebin verschoben leider zeile 33 is bei dem link zeile 31
sql.queryUpdate("CREATE TABLE IF NOT EXISTS ban (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(16), reason VARCHAR(100))");


- - - Aktualisiert - - -

Also von einem MySQL Client kann ich auf die MySQL Datenbank Connecten. hab es gerade mal ausprobiert.
 
C

Chrisliebaer

Guest
Okay, dann liegt der 2. Fehler daran, dass MySQL sql = this.plugin.getMySQL(); null zurück gibt. Vermutlich, weil die Verbindung nicht aufgebaut werden konnte.

Du solltest also rausfinden, wieso ein lokaler Client auf die Datenbank kommt und dein Pluhin nicht. Vielleicht lässt du dir mal den Fehlercode ausgeben, den die Datenbank wirft.

Außerdem hast du hier auch auch eine Stelle gefunden, die eigentlich nicht sein dürfte. Wenn die Verbindung nicht aufgebaut werden kann, dann musst du dafür sorgen, dass dein Code nicht einfach weiterarbeitet. Nur als kleiner Hinweis, zum verbessern für die Zukunft.
 
Oben