EntwicklerMySQL-Datenbanken

Eine MySQL-Datenbank mit deinem Server nutzen

Viele Plugins und Mods können ihre Daten statt in lokalen Dateien in einer MySQL-Datenbank speichern: Berechtigungen (LuckPerms), Block-Logs (CoreProtect), Economy, Banns und Statistiken. Jeder Hostwolf-Server enthält ohne Aufpreis bis zu 5 MySQL-kompatible Datenbanken (MariaDB).

Deine Datenbanken laufen auf dem Rechner deines eigenen Servers, nicht auf einem geteilten Datenbankserver. Sie sind daher schnell, und die Last anderer bremst sie nicht. Es bedeutet aber auch: Wenn du den Server löschst, werden seine Datenbanken gelöscht. Lade vorher eine Kopie herunter, wenn du sie behalten willst.

Datenbank anlegen#

  1. Öffne deinen Server im Control Panel und gehe zum Tab Datenbanken.
  2. Klicke auf Neue Datenbank und gib einen kurzen Namen ein, zum Beispiel luckperms.
  3. Klicke auf Datenbank erstellen.

Die erste Datenbank auf einem Server startet auch den Datenbankdienst, was etwa eine Minute dauert. Der Tab zeigt einen Fortschrittshinweis, und die Datenbank erscheint von selbst. Weitere Datenbanken werden sofort angelegt.

Klicke auf das Augensymbol neben einer Datenbank, um ihre Verbindungsdaten zu sehen. Jeder Wert hat einen Kopieren-Button, und das Passwort bleibt verborgen, bis du auf Anzeigen klickst.

FeldWert
Host172.18.0.1 (die Adresse, über die dein Gameserver die Datenbank erreicht)
Port3306
Datenbankder im Tab angezeigte Name, zum Beispiel s12_luckperms
Benutzername und Passwortstehen in den Verbindungsdaten

Trage in Plugin-Konfigurationen 172.18.0.1 als Host ein, nicht localhost oder 127.0.0.1. Dein Gameserver läuft in einem eigenen Container, daher zeigt localhost auf den Container selbst.

LuckPerms#

Stoppe den Server und bearbeite dann plugins/LuckPerms/config.yml im Tab Dateien:

storage-method: MySQL

data:
  address: 172.18.0.1:3306
  database: s12_luckperms
  username: u12_AbCdEfGhIj
  password: 'your-password'

Starte den Server. Die Konsole zeigt Loading storage provider... [MYSQL] und LuckPerms legt seine Tabellen an. Um Ränge in einem BungeeCord- oder Velocity-Netzwerk zu teilen, lässt du alle Server auf dieselbe Datenbank zeigen (siehe Eine Datenbank mit deinen anderen Servern teilen) und gibst jedem einen eigenen server:-Namen, falls du serverbezogene Berechtigungen nutzt.

CoreProtect#

Bearbeite plugins/CoreProtect/config.yml:

use-mysql: true
table-prefix: co_
mysql-host: 172.18.0.1
mysql-port: 3306
mysql-database: s12_coreprotect
mysql-username: u12_KlMnOpQrSt
mysql-password: your-password

Starte den Server neu. CoreProtect protokolliert viele Daten, gib ihm deshalb eine eigene Datenbank, statt sie mit anderen Plugins zu teilen.

Andere Plugins und Mods#

Die meisten Plugins fragen nach denselben fünf Werten: Host, Port, Datenbank, Benutzername und Passwort. Java-Plugins, die eine einzelne JDBC-URL wollen, nutzen die JDBC-Verbindungszeichenfolge aus den Verbindungsdaten, zum Beispiel jdbc:mysql://172.18.0.1:3306/s12_luckperms, und bekommen Benutzername und Passwort separat.

Eine Datenbank mit deinen anderen Servern teilen#

Der Fernzugriff ist standardmäßig aus: Nur Gameserver auf demselben Rechner können sich verbinden. So lässt du deine anderen Hostwolf-Server oder eine Website eine Datenbank nutzen:

  1. Öffne die Verbindungsdaten der Datenbank.
  2. Klicke unter Fernzugriff deine anderen Server in der Liste an, oder gib die öffentliche IPv4-Adresse eines anderen Servers oder einer Website ein.
  3. Klicke auf Fernzugriff speichern.

Die Firewall öffnet den Datenbankport dann für genau diese Adressen. Sie verbinden sich mit der Adresse Host (von außen) aus den Verbindungsdaten, Port 3306, und demselben Benutzernamen und Passwort.

Mit HeidiSQL, DBeaver oder MySQL Workbench verbinden#

Desktop-Apps sind praktisch, um Tabellen anzusehen, Abfragen auszuführen und große Dateien zu importieren.

  1. Finde die öffentliche IP deines Computers heraus (suche nach „Wie ist meine IP“). Füge sie in den Verbindungsdaten der Datenbank unter Fernzugriff hinzu, oder setze den Haken bei Verbindungen von überall erlauben, wenn sich deine IP zu Hause oft ändert.
  2. Lege in deiner App eine neue MySQL- oder MariaDB-Verbindung an.
  3. Gib die Adresse Host (von außen), den Port 3306 sowie Benutzername und Passwort aus den Verbindungsdaten ein.

Wähle in HeidiSQL als Netzwerktyp MariaDB or MySQL (TCP/IP). Wähle in DBeaver MariaDB (oder MySQL) und lass den Treiber herunterladen, wenn danach gefragt wird.

Verbindungen von überall erlauben heißt: Jeder im Internet kann versuchen, sich anzumelden, und nur das lange Zufallspasswort schützt deine Daten. Halte es geheim, klicke auf Passwort ändern, falls es bekannt geworden sein könnte, und schalte die Option aus, wenn du fertig bist.

Export, Import und Backups#

  • Herunterladen: In den Verbindungsdaten gibt es die Schaltfläche Herunterladen, die die Datenbank als .sql.gz-Datei speichert.
  • Import: Datei importieren lädt eine .sql- oder .sql.gz-Datei mit bis zu 50 MB. Für größere Dateien nimmst du eine Desktop-App.
  • Backups: Deine Datenbanken sind automatisch in den Backups deines Servers enthalten. Stellst du im Tab Backups ein Backup wieder her, kommen auch die Datenbanken auf denselben Stand zurück. Die Dumps liegen im Ordner hostwolf-databases deiner Serverdateien.

Per Code oder mit einem KI-Assistenten#

Das SDK, der MCP-Server und die REST-API können Datenbanken anlegen, den Fernzugriff ändern, Passwörter erneuern und Datenbanken exportieren oder importieren. Frag deinen Assistenten zum Beispiel: „Lege auf meinem Survival-Server eine Datenbank namens luckperms an und richte LuckPerms dafür ein.“

Fehlerbehebung#

  • Communications link failure oder Verbindung abgelehnt: Prüfe, ob der Host 172.18.0.1 und der Port 3306 ist. Von außen nutzt du die Adresse Host (von außen) und stellst sicher, dass deine IP unter Fernzugriff erlaubt ist.
  • Zugriff verweigert: Kopiere das Passwort erneut aus den Verbindungsdaten. Nach Passwort ändern musst du jedes Plugin aktualisieren, das die Datenbank nutzt.
  • Der Tab meldet, dass der Datenbankdienst nicht antwortet: Deine Daten sind sicher. Prüfe, ob der Rechner des Servers online ist, und versuche es in ein paar Minuten noch einmal, oder kontaktiere den Support.
  • Du brauchst mehr als 5 Datenbanken: Kontaktiere den Support.
Hängst du fest oder fehlt ein Endpunkt? Schreib uns unter game.hostwolf.net/contact oder support@hostwolf.net.