Naar de inhoud
Actuele kortingscode:10% kortingGebruiken bij je bestelling

MySQL-database voor plugins: LuckPerms, CoreProtect en meer

Zo maak je op het tabblad Database een database voor je Minecraft-server aan en koppel je er LuckPerms, CoreProtect en andere plugins aan. Met toegang vanaf je computer, back-ups en het oplossen van verbindingsfouten.

  • gevorderd
  • ~15 min
  • Bijgewerkt op 1-10-2026

De meeste plugins slaan hun gegevens op in bestanden in hun eigen map. Voor grote hoeveelheden gegevens (de blokgeschiedenis in CoreProtect) of voor het delen tussen meerdere servers (de rechten van LuckPerms in een netwerk achter een proxy) is een MySQL-database beter. We laten zien hoe je er bij ons een aanmaakt, hoe je LuckPerms en CoreProtect eraan koppelt en hoe je er vanaf je computer bij komt.

Wat je nodig hebt

  • Een Minecraft-server bij StormHost met een plugin die MySQL ondersteunt
  • De rechten Databases en Bestanden, als je niet de eigenaar van de server bent
  • Ongeveer 15 minuten

Wanneer MySQL in plaats van bestanden#

SituatieBestanden (standaard)MySQL
Eén server, een gewoon aantal spelersVoldoendeNiet nodig
Een servernetwerk achter de proxy Velocity met gedeelde rechtenKan nietNodig: alle servers moeten dezelfde gegevens lezen
CoreProtect op een grote server die lang draaitWerkt, het bestand groeitBeter beheer van grote hoeveelheden gegevens
Je wilt de gegevens vanaf je computer bekijken of bewerkenLastigEenvoudig (HeidiSQL, DBeaver)
Een website die statistieken van de server uitleestKan nietJa

Een database aanmaken#

  1. Open in je klantaccount Mijn diensten, klik op de Minecraft-server en ga naar het tabblad Databases.

  2. Typ in het veld Databasenaam een korte naam, bijvoorbeeld luckperms. Toegestaan zijn letters zonder accenten, cijfers en het onderstrepingsteken, maximaal 48 tekens.

  3. Laat het veld Toegang toegestaan vanaf op % staan (zie hieronder).

  4. Klik op Database aanmaken.

    In de lijst verschijnt de nieuwe database met de gegevens Host, Gebruiker, Toegang toegestaan vanaf en Wachtwoord.

GegevenWat het isWaar je het invult
Databasenaam (bovenaan bij de database)De werkelijke naam van de database. Het systeem kan een voorvoegsel aan jouw naam toevoegen.In het veld “database” van de plugin. Kopieer altijd precies wat je ziet.
HostHet adres van de databaseserver in de vorm adres:poort.In het veld “host”/“address”, de poort in het veld “port”.
GebruikerDe inlognaam voor de database (gegenereerd).In het veld “username”/“user”.
WachtwoordHet wachtwoord (wordt getoond als je erop klikt).In het veld “password”.
Toegang toegestaan vanafVanaf waar er verbinding met de database mag worden gemaakt: % = overal vandaan, anders één IP-adres.Nergens, het is alleen ter informatie.

Toegang toegestaan vanaf

Vul je een specifiek IP-adres in (bijvoorbeeld dat van thuis), dan accepteert de database alleen vanaf dat adres verbindingen. Ook je Minecraft-server kan dan niet verbinden, want die verbindt vanaf een ander adres. Laat het daarom op % staan en vertrouw op het sterke gegenereerde wachtwoord. De waarde kun je na het aanmaken niet meer wijzigen: je moet dan een nieuwe database aanmaken.

Andere knoppen:

  • Nieuw wachtwoord – genereert een nieuw wachtwoord. Het oude werkt dan niet meer, zet het nieuwe dus meteen in de configuratie van alle plugins die de database gebruiken en herstart de server.
  • Verwijderen – verwijdert de database met alle gegevens.

Een database verwijderen

Verwijderen kan niet ongedaan worden gemaakt en de gegevens zitten niet in de back-ups van de server. Exporteer de database vóór het verwijderen (zie Back-ups van de database).

Het aantal databases hangt af van je pakket. Boven de lijst zie je 1 van 10 gebruikt. Is de limiet bereikt, dan zie je De limiet is bereikt. Meerdere plugins kunnen één database delen: elke plugin gebruikt eigen tabellen met een eigen voorvoegsel (LuckPerms luckperms_, CoreProtect co_).

LuckPerms#

Heb je al rechten ingesteld?

Na het overschakelen naar MySQL begint LuckPerms met een lege database. Heb je op de server al groepen en rechten, maak dan eerst een export volgens het gedeelte Bestaande rechten overzetten naar MySQL en ga pas daarna verder.

  1. Stop de server.

  2. Open op het tabblad Bestanden het bestand plugins/LuckPerms/config.yml.

  3. Zoek storage-method en de sectie data en pas ze aan:

    plugins/LuckPerms/config.ymlYAML
    storage-method: mysql
    
    data:
      address: <HOST>
      database: <DATABASE_NAME>
      username: <USER>
      password: '<PASSWORD>'

    Vervang <HOST>, <DATABASE_NAME>, <USER> en <PASSWORD> door de gegevens van het tabblad Databases, altijd zonder de punthaken. Laat bij het wachtwoord de enkele aanhalingstekens staan.

  4. Sla het bestand op (Ctrl+S) en start de server.

InstellingWat het doetAanbevolen waardeWanneer wijzigen
storage-methodWaar LuckPerms de gegevens opslaat: h2 (bestand, standaard), mysql, mariadb, yaml en andere.mysqlmariadb, als je weet dat de databaseserver MariaDB is (LuckPerms raadt die aan).
data.addressHet adres van de database. De poort schrijf je achter een dubbele punt (adres:poort).De waarde HostAls je van database wisselt.
data.databaseDe naam van de database. Die moet al bestaan.De naam van het tabblad Databases–
data.username, data.passwordDe inloggegevens.Van het tabblad DatabasesNa een klik op Nieuw wachtwoord.
data.pool-settings.maximum-pool-sizeHoeveel verbindingen met de database LuckPerms openhoudt.10Verlaag de waarde (bijvoorbeeld naar 5) als de database te veel verbindingen meldt.
data.pool-settings.propertiesExtra verbindingsparameters.useUnicode: true, characterEncoding: utf8Voeg useSSL: false toe bij een waarschuwing over SSL.
data.table-prefixHet voorvoegsel van de tabellen.'luckperms_'Een ander voorvoegsel als twee servers gescheiden gegevens in één database moeten hebben.
server (aan het begin van het bestand)De servernaam voor rechten die maar op één server van het netwerk gelden.globalIn een netwerk achter een proxy voor elke server een andere (lobby, survival).

Speciale tekens in het wachtwoord

Zet het wachtwoord altijd tussen enkele aanhalingstekens '…'. Anders zou YAML tekens zoals #, : of % als syntaxis opvatten. Bevat het wachtwoord een apostrof ', schrijf die dan twee keer ('').

Bestaande rechten overzetten naar MySQL#

Staan je rechten al in de oorspronkelijke opslag, zet ze dan over:

  1. Voer nog vóór het wijzigen van storage-method in de console in:

    text
    lp export zaloha-opravneni
    • lp export – slaat alle gegevens van LuckPerms op in een bestand.
    • zaloha-opravneni – de bestandsnaam. Er ontstaat plugins/LuckPerms/zaloha-opravneni.json.gz.
  2. Stop de server, wijzig config.yml volgens de stappen hierboven en start de server.

  3. Voer in de console in:

    text
    lp import zaloha-opravneni.json.gz

    Typ de bestandsnaam inclusief de extensie .json.gz. De gegevens worden in de nieuwe database geladen.

CoreProtect#

  1. Stop de server.

  2. Open op het tabblad Bestanden het bestand plugins/CoreProtect/config.yml en pas aan:

    plugins/CoreProtect/config.ymlYAML
    use-mysql: true
    table-prefix: co_
    mysql-host: <ADDRESS>
    mysql-port: <PORT>
    mysql-database: <DATABASE_NAME>
    mysql-username: <USER>
    mysql-password: '<PASSWORD>'

    Splits het gegeven Host van het tabblad Databases: het deel vóór de dubbele punt hoort in <ADDRESS>, het getal na de dubbele punt in <PORT>.

  3. Sla op en start de server.

InstellingWat het doetAanbevolen waardeWanneer wijzigen
use-mysqlSlaat de geschiedenis op in MySQL in plaats van in een bestand.truefalse om terug te gaan naar het bestand.
table-prefixHet voorvoegsel van de tabellen van CoreProtect.co_Als in één database de CoreProtect van meerdere servers draait.
mysql-hostHet adres van de database zonder poort.Het deel van Host vóór de dubbele punt–
mysql-portDe poort van de database.Het deel van Host na de dubbele punt–
mysql-database, mysql-username, mysql-passwordDe naam van de database en de inloggegevens.Van het tabblad DatabasesNa een klik op Nieuw wachtwoord.

De oude geschiedenis gaat niet mee

Met het overschakelen naar MySQL begint CoreProtect een nieuwe geschiedenis. De bestaande records blijven in het bestand in de map plugins/CoreProtect staan, maar komen niet in MySQL. Schakel daarom meteen aan het begin over, niet pas nadat de server een jaar draait.

Nieuwere versies van CoreProtect (vanaf versie 25) hebben in plaats van use-mysql de sleutel database-type. Zie je die in het bestand, stel dan database-type: mysql in. Die sleutel gaat vóór use-mysql.

Andere plugins#

De configuratie verschilt per plugin, maar de velden zijn bijna altijd dezelfde:

Veld in de configuratie van de pluginWat je invult
host, hostname, addressHet adres uit het gegeven Host (zonder poort, als er een apart veld voor de poort is).
portDe poort uit het gegeven Host.
database, db-nameDe naam van de database.
username, userDe gebruiker.
passwordHet wachtwoord (tussen aanhalingstekens).
useSSL, sslfalse, als de plugin problemen met SSL meldt.
jdbc-url, urlHet volledige adres in de vorm jdbc:mysql://<ADDRESS>:<PORT>/<DATABASE_NAME> (bij de MariaDB-driver jdbc:mariadb://…).

Herstart de server altijd na een wijziging. Het commando /reload ontregelt plugins met een database vaak.

Toegang vanaf je computer#

Je kunt de database op je computer bekijken en bewerken. Dat werkt als Toegang toegestaan vanaf de waarde % heeft.

Windows

  1. Installeer HeidiSQL van heidisql.com (opent in een nieuw venster).
  2. Klik in het venster van de sessiebeheerder op New.
  3. Kies bij Network type de optie MariaDB/MySQL (TCP/IP).
  4. Vul bij Hostname / IP het adres in, bij Port de poort (uit het gegeven Host) en bij User en Password de inloggegevens.
  5. Klik op Open.

macOS

  1. Installeer DBeaver Community van dbeaver.io (opent in een nieuw venster).
  2. Kies Database › New Database Connection en het type MySQL (of MariaDB).
  3. Vul Server Host, Port, Database, Username en Password in.
  4. Klik op Test Connection en daarna op Finish.

Linux

Gebruik DBeaver Community van dbeaver.io (opent in een nieuw venster) (dezelfde stappen als op macOS), of een client in de terminal. Op Ubuntu en Debian installeer je die met het commando apt install mariadb-client en verbind je zo:

bash
mariadb -h <ADDRESS> -P <PORT> -u <USER> -p <DATABASE_NAME>
  • mariadb – de client voor zowel MariaDB als MySQL.
  • -h <ADDRESS> – het adres van de databaseserver.
  • -P <PORT> – de poort (hoofdletter P).
  • -u <USER> – de gebruiker.
  • -p – het programma vraagt om het wachtwoord (je typt het niet in het commando, zodat het niet in de geschiedenis blijft staan).
  • <DATABASE_NAME> – de database waarmee je wilt werken.

Een nieuwere MariaDB-client (vanaf versie 11.4, bijvoorbeeld op Debian 13) controleert standaard het certificaat van de databaseserver. Eindigt de verbinding met een fout met TLS/SSL error en een verwijzing naar het certificaat, voeg dan achter mariadb de optie --disable-ssl-verify-server-cert toe (de client controleert het certificaat van de server dan niet). Meldt de fout dat de server geen SSL ondersteunt, gebruik dan in plaats daarvan de optie --disable-ssl.

Voorzichtig met wijzigingen

Wijzig geen gegevens terwijl de server draait: plugins houden een deel van de gegevens in het geheugen en overschrijven jouw wijziging. Maak vóór handmatige wijzigingen altijd een export.

Back-ups van de database#

De back-ups op het tabblad Back-ups bevatten alleen de bestanden van de server, databases zitten er niet in. Exporteer die apart:

  1. Verbind in HeidiSQL met de database (zie hierboven).
  2. Klik links op de database en kies Tools › Export database as SQL.
  3. Vink zowel het aanmaken van de tabellen als de gegevens aan, kies uitvoer naar een .sql-bestand en klik op Export.

Herstellen: selecteer in HeidiSQL de database en kies File › Run SQL file. Bij LuckPerms heb je daarnaast een eigen back-up via het commando lp export <FILE_NAME>.

Controle#

  • LuckPerms: voer in de console lp info in. In het gedeelte Storage moet Type: MySQL (of MariaDB) staan.
  • CoreProtect: voer in de console co status in. Je ziet de regel Database: Using MySQL.
  • In HeidiSQL of DBeaver zie je nieuwe tabellen in de database (luckperms_…, co_…).

Als iets niet werkt#

De plugin heeft de database helemaal niet bereikt (de tweede melding komt van CoreProtect). Controleer het adres en de poort (het gegeven Host, exact, inclusief het getal na de dubbele punt). Bij CoreProtect moeten het adres en de poort in aparte velden staan. Klopt alles, dan kan de databaseserver tijdelijk onbereikbaar zijn. Probeer het zo meteen opnieuw of neem contact op met support.

Access denied for user '…'@'…' (using password: YES)#

De database heeft de naam of het wachtwoord geweigerd:

  • Je hebt het wachtwoord intussen gewijzigd met de knop Nieuw wachtwoord en in de plugin staat nog het oude.
  • Het wachtwoord bevat speciale tekens en staat niet tussen aanhalingstekens.
  • Toegang toegestaan vanaf bevat een specifiek IP-adres van waaraf de server niet verbindt. Maak een nieuwe database aan met %.

Unknown database '…'#

De naam van de database klopt niet. Kopieer hem exact van het tabblad Databases, inclusief een eventueel voorvoegsel.

Waarschuwing Establishing SSL connection without server's identity verification is not recommended#

Dit is een waarschuwing van de MySQL-driver. Voeg bij LuckPerms useSSL: false en verifyServerCertificate: false toe aan data.pool-settings.properties, zoek bij andere plugins de optie useSSL.

Connection is not available, request timed out after 5000ms#

LuckPerms heeft geen verbinding uit de pool gekregen. De database is onbereikbaar, of het maximale aantal verbindingen is bereikt. Elke server met LuckPerms houdt standaard 10 verbindingen open. Gaan er meer verbindingen naar de database (een servernetwerk, andere plugins), verlaag dan maximum-pool-size.

No operations allowed after connection closed#

De database heeft een inactieve verbinding gesloten voordat de plugin die had vernieuwd. Bij LuckPerms moet maximum-lifetime (in milliseconden) korter zijn dan de time-out van de database. De standaardwaarde van 30 minuten voldoet meestal.

Samenvatting

  • De database maak je aan op het tabblad Databases, laat Toegang toegestaan vanaf op % staan.
  • Kopieer de gegevens exact, zet het wachtwoord in YAML tussen enkele aanhalingstekens.
  • LuckPerms: storage-method: mysql en de sectie data, oudere gegevens zet je over met lp export en lp import.
  • CoreProtect: use-mysql: true, vul het adres en de poort apart in, de oude geschiedenis gaat niet mee.
  • Databases zitten niet in de back-ups van de server: exporteer ze apart (HeidiSQL).

Was deze handleiding nuttig?

Geldt voor

  • Paper, Purpur, Folia
  • Fabric, NeoForge (mods met MySQL-ondersteuning)
  • LuckPerms
  • CoreProtect

Diensten

Fout in de handleiding melden

Zoeken in de handleidingen