DéveloppeursBases de données MySQL

Utiliser une base de données MySQL avec votre serveur

Beaucoup de plugins et de mods peuvent stocker leurs données dans une base MySQL plutôt que dans des fichiers locaux : permissions (LuckPerms), journaux de blocs (CoreProtect), économie, bannissements et statistiques. Chaque serveur Hostwolf inclut jusqu’à 5 bases de données compatibles MySQL (MariaDB) sans frais supplémentaires.

Vos bases de données tournent sur la machine de votre propre serveur, pas sur un serveur de bases partagé : elles sont rapides et la charge des autres ne les ralentit pas. Cela signifie aussi que supprimer le serveur supprime ses bases de données. Téléchargez-en une copie avant si vous voulez les garder.

Créer une base de données#

  1. Ouvrez votre serveur dans le panneau de contrôle et allez dans l’onglet Bases de données.
  2. Cliquez sur Nouvelle base de données et donnez-lui un nom court, par exemple luckperms.
  3. Cliquez sur Créer une base de données.

La première base de données d’un serveur démarre aussi le service de bases de données, ce qui prend environ une minute. L’onglet affiche une indication de progression et la base apparaît d’elle-même. Les suivantes sont créées immédiatement.

Cliquez sur l’icône en forme d’œil à côté d’une base de données pour voir ses détails de connexion. Chaque valeur a un bouton de copie, et le mot de passe reste masqué tant que vous ne cliquez pas sur Afficher.

ChampValeur
Hôte172.18.0.1 (l’adresse que votre serveur de jeu utilise pour joindre la base de données)
Port3306
Base de donnéesle nom affiché dans l’onglet, par exemple s12_luckperms
Nom d’utilisateur et mot de passeindiqués dans les détails de connexion

Indiquez 172.18.0.1 comme hôte dans les configurations de plugins, pas localhost ni 127.0.0.1. Votre serveur de jeu tourne dans son propre conteneur : localhost désigne donc le conteneur lui-même.

LuckPerms#

Arrêtez le serveur, puis modifiez plugins/LuckPerms/config.yml dans l’onglet Fichiers :

storage-method: MySQL

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

Démarrez le serveur. La console affiche Loading storage provider... [MYSQL] et LuckPerms crée ses tables. Pour partager les rangs sur un réseau BungeeCord ou Velocity, faites pointer tous les serveurs vers la même base (voir Partager une base de données avec vos autres serveurs) et donnez à chacun un nom server: différent si vous utilisez des permissions par serveur.

CoreProtect#

Modifiez 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

Redémarrez le serveur. CoreProtect enregistre beaucoup de données : donnez-lui sa propre base plutôt que de la partager avec d’autres plugins.

Autres plugins et mods#

La plupart des plugins demandent les cinq mêmes valeurs : hôte, port, base de données, nom d’utilisateur et mot de passe. Les plugins Java qui veulent une seule URL JDBC peuvent utiliser la chaîne de connexion JDBC des détails de connexion, par exemple jdbc:mysql://172.18.0.1:3306/s12_luckperms, avec le nom d’utilisateur et le mot de passe saisis à part.

Partager une base de données avec vos autres serveurs#

L’accès à distance est désactivé par défaut : seuls les serveurs de jeu de la même machine peuvent se connecter. Pour qu’un autre serveur Hostwolf ou un site web utilise une base de données :

  1. Ouvrez les détails de connexion de la base de données.
  2. Sous Accès à distance, cliquez sur vos autres serveurs dans la liste, ou saisissez l’adresse IPv4 publique d’un autre serveur ou d’un site web.
  3. Cliquez sur Enregistrer l’accès à distance.

Le pare-feu ouvre alors le port de la base de données à ces adresses exactement. Elles se connectent avec l’adresse Hôte (depuis l’extérieur) des détails de connexion, le port 3306, et les mêmes nom d’utilisateur et mot de passe.

Se connecter avec HeidiSQL, DBeaver ou MySQL Workbench#

Les applications de bureau sont pratiques pour parcourir les tables, lancer des requêtes et importer de gros fichiers.

  1. Trouvez l’IP publique de votre ordinateur (cherchez « quelle est mon IP »). Dans les détails de connexion de la base de données, ajoutez-la sous Accès à distance, ou cochez Autoriser les connexions depuis n’importe où si votre IP personnelle change souvent.
  2. Dans votre application, créez une nouvelle connexion MySQL ou MariaDB.
  3. Saisissez l’adresse Hôte (depuis l’extérieur), le port 3306, ainsi que le nom d’utilisateur et le mot de passe des détails de connexion.

Dans HeidiSQL, choisissez MariaDB or MySQL (TCP/IP) comme type de réseau. Dans DBeaver, choisissez MariaDB (ou MySQL) et laissez-le télécharger le pilote s’il le demande.

Autoriser les connexions depuis n’importe où permet à n’importe qui sur Internet de tenter de se connecter : seul le long mot de passe aléatoire protège alors vos données. Gardez-le secret, cliquez sur Renouveler le mot de passe s’il a pu fuiter, et désactivez l’option quand vous avez terminé.

Export, import et sauvegardes#

  • Télécharger : les détails de connexion proposent un bouton Télécharger qui enregistre la base de données dans un fichier .sql.gz.
  • Importer : Importer un fichier charge un fichier .sql ou .sql.gz de 50 Mo maximum. Pour les fichiers plus gros, utilisez une application de bureau.
  • Sauvegardes : vos bases de données sont incluses automatiquement dans les sauvegardes de votre serveur. Restaurer une sauvegarde dans l’onglet Sauvegardes ramène les bases de données au même moment. Les dumps sont conservés dans le dossier hostwolf-databases des fichiers de votre serveur.

Depuis du code ou un assistant IA#

Le SDK, le serveur MCP et l’API REST peuvent créer des bases de données, modifier l’accès à distance, renouveler les mots de passe, et exporter ou importer les bases. Demandez par exemple à votre assistant : « Crée une base de données luckperms sur mon serveur survie et configure LuckPerms pour l’utiliser. »

Dépannage#

  • Communications link failure ou connexion refusée : vérifiez que l’hôte est 172.18.0.1 et le port 3306. Depuis l’extérieur, utilisez l’adresse Hôte (depuis l’extérieur) et vérifiez que votre IP est autorisée sous Accès à distance.
  • Accès refusé : copiez de nouveau le mot de passe depuis les détails de connexion. Après Renouveler le mot de passe, mettez à jour chaque plugin qui utilise la base de données.
  • L’onglet indique que le service de bases de données ne répond pas : vos données sont en sécurité. Vérifiez que la machine du serveur est en ligne et réessayez dans quelques minutes, ou contactez le support.
  • Il vous faut plus de 5 bases de données : contactez le support.
Bloqué, ou il manque un endpoint ? Écrivez-nous sur game.hostwolf.net/contact ou à support@hostwolf.net.