# Es kann keine Verbindung zum Server aufgebaut werden



## import java.dev.org (12. Aug 2016)

Hallo,
hier ist sind erstmal die Klassen in denen sich der Fehler befindet:



Spoiler: Code



AddSpawnPoint.java

```
package net.developer.spleef.database;

import net.developer.spleef.Spleef;
import org.bukkit.Bukkit;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQL {
    public static String host;
    public static String username;
    public static String password;
    public static String database;
    public static String port;
    public static Connection con;

    public static void connect() {
        if (!isConnected()) {
            try {
                con = DriverManager.getConnection("jdbc:mysql://" + host + ":" + port + "/" + database, username, password);
                Bukkit.getConsoleSender().sendMessage(Spleef.getInstance().prefix + " " + "§aMySQL Verbindung aufgebaut.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    public static void close() {
        if (isConnected()) {
            try {
                con.close();
                Bukkit.getConsoleSender().sendMessage(Spleef.getInstance().prefix + " " + "§cMySQL Verbindung geschlossen.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    public static boolean isConnected() {
        return con != null;
    }

    public static void createTable() {
        if (isConnected()) {
            try {
                con.createStatement().executeUpdate("CREATE TABLE IF NOT EXISTS Arenen (Arenenname VARCHAR(100),Spielerspawn1 VARCHAR(100), Spielerspawn2 VARCHAR(100), Spielerspawn3 VARCHAR(100), Spielerspawn4 VARCHAR(100))");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
```

Spleef.java

```
/**
* Created by mrose on 07.08.2016.
*/
public class Spleef extends JavaPlugin {
    @Override
    public void onEnable() {
        instance = this;
        registerCommands();
        registerListener();
        FileManager.setStandardConfig();
        FileManager.setStandardMySQL();
        FileManager.readConfig();
        FileManager.readMySQL();
        MySQL.connect();
        MySQL.createTable();
        Bukkit.getConsoleSender().sendMessage(prefix + " " + "§aAktiviert");
    }

    @Override
    public void onDisable() {
        MySQL.close();
    }

    public void registerCommands(){
        AddSpawnPoint cAddSpawnPoint = new AddSpawnPoint(this);
        getCommand("addSpawnPoint").setExecutor(cAddSpawnPoint);
    }

    private void registerListener() {
    }


    public String prefix;
    public static Spleef instance;

    public static Spleef getInstance() {
        return instance;
    }
}
```






Spoiler: Warn





```
[19:16:59 INFO]: [TerraSpleef] Enabling Spleef v1.0.0
[19:16:59 WARN]: java.sql.SQLException: null,  message from server: "Host 'fr25.server.pro' is not allowed to connect to this MariaDB server"
[19:16:59 WARN]:        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:959)
[19:16:59 WARN]:        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898)
[19:16:59 WARN]:        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887)
[19:16:59 WARN]:        at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1038)
[19:16:59 WARN]:        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2254)
[19:16:59 WARN]:        at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2285)
[19:16:59 WARN]:        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2084)
[19:16:59 WARN]:        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:795)
[19:16:59 WARN]:        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
[19:16:59 WARN]:        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[19:16:59 WARN]:        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[19:16:59 WARN]:        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[19:16:59 WARN]:        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
[19:16:59 WARN]:        at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
[19:16:59 WARN]:        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:400)
[19:16:59 WARN]:        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:327)
[19:16:59 WARN]:        at java.sql.DriverManager.getConnection(DriverManager.java:664)
[19:16:59 WARN]:        at java.sql.DriverManager.getConnection(DriverManager.java:247)
[19:16:59 WARN]:        at net.optdeveloper.spleef.database.MySQL.connect(MySQL.java:21)
[19:16:59 WARN]:        at net.optdeveloper.spleef.Spleef.onEnable(TerraSpleef.java:23)
[19:16:59 WARN]:        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:292)
[19:16:59 WARN]:        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:332)
[19:16:59 WARN]:        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404)
[19:16:59 WARN]:        at org.bukkit.craftbukkit.v1_10_R1.CraftServer.loadPlugin(CraftServer.java:347)
[19:16:59 WARN]:        at org.bukkit.craftbukkit.v1_10_R1.CraftServer.enablePlugins(CraftServer.java:319)
[19:16:59 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.t(MinecraftServer.java:407)
[19:16:59 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.l(MinecraftServer.java:372)
[19:16:59 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.a(MinecraftServer.java:327)
[19:16:59 WARN]:        at net.minecraft.server.v1_10_R1.DedicatedServer.init(DedicatedServer.java:242)
[19:16:59 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:517)
[19:16:59 WARN]:        at java.lang.Thread.run(Thread.java:745)
```




Ich weiß nicht wie ich dieses warn beheben kann 
hier ist noch die mySQL.yml, wo verbindungsdate drinstehen:


Spoiler: MySQL.yml



port: '3306'
database: spleef
password: password
username: root
host: 188.xxx.xxx.xx



Hoffentlich könnt ihr mir helfen


----------



## Thallius (12. Aug 2016)

Wo liegt denn der MySQL Server?


----------



## Bitfehler (12. Aug 2016)

Hast du die Datenbank auch so konfiguriert, dass Verbindungen von außen erlaubt sind?


----------



## import java.dev.org (12. Aug 2016)

Der MySQL Server ist auf meinem PC (xampp), der MC Server, also der Client ist von dem externen hoster (Server.pro).

@Bitfehler: Wie muss ich die konfigurieren, dass das geht?


----------



## Thallius (12. Aug 2016)

Die meisten Webhoster erlauben das gar nicht. Ist auch viel zu gefährlich. Da sollte man nr via Webservice auf die DB zugreifen.


----------



## import java.dev.org (12. Aug 2016)

Ok, dann leg ich mir wieder nen eigenen Server an.

Danke für die Antworten! Wenn noch jemand ne andere Lösung hat, immer her damit 

Gruß
Typ


----------



## import java.dev.org (13. Aug 2016)

Nächstes Problem: Also ich lass es jetz über nen lokalen Server laufen, und jetz kommt n Warn, irgendwas mit dem Passwort...


Spoiler: Warn





```
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
[17:25:40 WARN]:        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:959)
[17:25:40 WARN]:        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3870)
[17:25:40 WARN]:        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3806)
[17:25:40 WARN]:        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:871)
[17:25:40 WARN]:        at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1686)
[17:25:40 WARN]:        at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1207)
[17:25:40 WARN]:        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2254)
[17:25:40 WARN]:        at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2285)
[17:25:40 WARN]:        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2084)
[17:25:40 WARN]:        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:795)
[17:25:40 WARN]:        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
[17:25:40 WARN]:        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[17:25:40 WARN]:        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
[17:25:40 WARN]:        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
[17:25:40 WARN]:        at java.lang.reflect.Constructor.newInstance(Unknown Source)
[17:25:40 WARN]:        at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
[17:25:40 WARN]:        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:400)
[17:25:40 WARN]:        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:327)
[17:25:40 WARN]:        at java.sql.DriverManager.getConnection(Unknown Source)
[17:25:40 WARN]:        at java.sql.DriverManager.getConnection(Unknown Source)
[17:25:40 WARN]:        at net.optdeveloper.terraspleef.database.MySQL.connect(MySQL.java:21)
[17:25:40 WARN]:        at net.optdeveloper.terraspleef.TerraSpleef.onEnable(TerraSpleef.java:23)
[17:25:40 WARN]:        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:292)
[17:25:40 WARN]:        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:332)
[17:25:40 WARN]:        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404)
[17:25:40 WARN]:        at org.bukkit.craftbukkit.v1_10_R1.CraftServer.loadPlugin(CraftServer.java:347)
[17:25:40 WARN]:        at org.bukkit.craftbukkit.v1_10_R1.CraftServer.enablePlugins(CraftServer.java:319)
[17:25:40 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.t(MinecraftServer.java:404)
[17:25:40 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.l(MinecraftServer.java:369)
[17:25:40 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.a(MinecraftServer.java:324)
[17:25:40 WARN]:        at net.minecraft.server.v1_10_R1.DedicatedServer.init(DedicatedServer.java:243)
[17:25:40 WARN]:        at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:514)
[17:25:40 WARN]:        at java.lang.Thread.run(Unknown Source)
```




Hoffentlich kann nochmal jemand helfen


----------



## Thallius (13. Aug 2016)

Tja, da werden wohl username und/oder passwort nicht stimmen....


----------



## import java.dev.org (13. Aug 2016)

In welcher config Datei muss ich die einstellen?


----------



## dayaftereh (13. Aug 2016)

Also bei MySQL musst du Benutzer und Passwort direkt in der Datenbank anlegen. Denke wenn du das Googlest wirst du ein paar Tutorials finden.


----------



## import java.dev.org (14. Aug 2016)

Gefunden hab ich schon ein paar Tutorials, nur leider funktioniert keines davon wirklich. Z.B. Steht da relativ oft, man solle das in der Konsole ändern, was bei mir nicht funktioniert:

```
Setting environment for using XAMPP for Windows.
mrose@DESKTOP-1ANQV5V c:\xampp
# mysql --user=root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
```

Auc gibt es angeblich die Möglichkeit das ganze in den Konfigs zu ändern, nur steht nirgens, in welcher Konfig und wenn doch, steht nicht da was genau man ändern soll, und das richtige als kompletter Anfänger zu finden hat sich nach 4 Neuinstallation von xampp als schwer herausgestellt ^^

Vielleicht kann mir doch noch jemand genau sagen was ich tun muss


----------



## Thallius (14. Aug 2016)

Nein, dass mySQL Passwort kann man nicht in den Konfigs ändern.

Standardmäßig ist dieses bei XAMP glaube ich auch root aber das muss ja schließlich irgendwo stehen. Da könnte es helfen einfach mal das Manual von XAMPP zu lesen.

und testen würde ich das einfach mal mit dem phpmyAdmin oder ähnlicher Software


----------



## Bitfehler (14. Aug 2016)

http://stackoverflow.com/questions/24566453/resetting-mysql-root-password-with-xampp-on-localhost

Enthält Anleitung zum Passwortwechsel


----------

