Przejdź do treści
Aktualny kupon:10% zniżkiUżyj w zamówieniu

Baza danych MySQL dla pluginów: LuckPerms, CoreProtect i inne

Jak utworzyć bazę danych dla serwera Minecraft w zakładce Baza danych i podłączyć do niej LuckPerms, CoreProtect i inne pluginy. Z dostępem z komputera, kopiami zapasowymi i naprawą błędów połączenia.

  • zaawansowany
  • ~15 min
  • Zaktualizowano 9.10.2026

Większość pluginów przechowuje dane w plikach we własnym folderze. Przy dużej ilości danych (historia bloków w CoreProtect) albo przy współdzieleniu danych między kilkoma serwerami (uprawnienia LuckPerms w sieci za proxy) lepiej sprawdza się baza danych MySQL. Ten poradnik pokazuje, jak ją utworzyć w StormHost, jak podłączyć do niej LuckPerms i CoreProtect oraz jak dostać się do niej z komputera.

Czego potrzebujesz

  • Serwer Minecraft w StormHost z pluginem obsługującym MySQL
  • Uprawnienia Bazy danych i Pliki, jeśli nie jesteś właścicielem serwera
  • Około 15 minut

Kiedy MySQL zamiast plików#

SytuacjaPliki (domyślnie)MySQL
Jeden serwer, zwykła liczba graczyWystarcząNiepotrzebny
Sieć serwerów za proxy Velocity ze wspólnymi uprawnieniamiNiemożliweWymagany – wszystkie serwery muszą czytać te same dane
CoreProtect na dużym, długo działającym serwerzeDziała, ale plik stale rośnieLepiej radzi sobie z dużymi danymi
Chcesz przeglądać lub edytować dane z komputeraSkomplikowaneŁatwe (HeidiSQL, DBeaver)
Strona WWW, która czyta statystyki z serweraNiemożliweTak

Utworzenie bazy danych#

  1. W strefie klienta otwórz Moje usługi, kliknij swój serwer Minecraft i przejdź do zakładki Baza danych.

  2. W polu Nazwa bazy danych wpisz krótką nazwę, na przykład luckperms. Dozwolone są litery bez znaków diakrytycznych, cyfry i podkreślniki, maksymalnie 48 znaków.

  3. Pole Dozwolone połączenia z zostaw na % (patrz niżej).

  4. Kliknij Utwórz bazę danych.

    Nowa baza pojawi się na liście z danymi Host, Użytkownik, Dozwolone połączenia z i Hasło.

DaneCo to jestGdzie to wpisujesz
Nazwa bazy danych (u góry bazy)Rzeczywista nazwa bazy danych. System może dodać do wybranej nazwy prefiks.W polu „database” pluginu. Zawsze kopiuj dokładnie to, co widzisz.
HostAdres serwera bazy danych w postaci adres:port.W polu „host”/„address”, a port w polu „port”.
UżytkownikNazwa logowania do bazy (wygenerowana).W polu „username”/„user”.
HasłoHasło (wyświetli się po kliknięciu).W polu „password”.
Dozwolone połączenia zSkąd można łączyć się z bazą: % = zewsząd, inaczej jeden adres IP.Nigdzie, to tylko informacja.

Dozwolone połączenia z

Jeśli wpiszesz konkretny adres IP (na przykład domowy), baza przyjmie połączenia tylko z tego adresu. Nie połączy się z nią nawet Twój serwer Minecraft, bo łączy się z innego adresu. Zostaw więc % i polegaj na silnym wygenerowanym haśle. Wartości nie da się zmienić po utworzeniu bazy – trzeba by utworzyć nową bazę.

Pozostałe przyciski:

  • Nowe hasło – generuje nowe hasło. Stare przestaje działać, więc od razu wpisz nowe w konfiguracji każdego pluginu, który używa bazy, i uruchom serwer ponownie.
  • Usuń – usuwa bazę razem ze wszystkimi danymi.

Usunięcie bazy danych

Usunięcia nie da się cofnąć, a danych nie ma w kopiach zapasowych serwera. Przed usunięciem wyeksportuj bazę (zobacz Kopie zapasowe bazy danych).

Liczba baz danych zależy od pakietu. Nad listą zobaczysz Wykorzystano 1 z 10. Gdy limit się wyczerpie, zobaczysz Limit został osiągnięty. Jedną bazę może dzielić kilka pluginów – każdy używa własnych tabel z własnym prefiksem (LuckPerms luckperms_, CoreProtect co_).

LuckPerms#

Masz już ustawione uprawnienia?

Po przejściu na MySQL LuckPerms zaczyna z pustą bazą. Jeśli masz już na serwerze grupy i uprawnienia, najpierw je wyeksportuj według sekcji Przeniesienie istniejących uprawnień do MySQL i dopiero potem kontynuuj.

  1. Zatrzymaj serwer.

  2. W zakładce Pliki otwórz plugins/LuckPerms/config.yml.

  3. Znajdź storage-method i sekcję data i zmień je:

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

    Zamiast <HOST>, <DATABASE_NAME>, <USER> i <PASSWORD> wpisz dane z zakładki Baza danych, zawsze bez nawiasów ostrych. Pojedyncze cudzysłowy wokół hasła zostaw.

  4. Zapisz plik (Ctrl+S) i uruchom serwer.

UstawienieCo robiZalecana wartośćKiedy zmieniać
storage-methodGdzie LuckPerms przechowuje dane: h2 (plik, domyślnie), mysql, mariadb, yaml i inne.mysqlmariadb, jeśli wiesz, że serwer bazy to MariaDB (LuckPerms go zaleca).
data.addressAdres bazy danych. Port wpisuje się po dwukropku (adres:port).Wartość HostPrzy zmianie bazy.
data.databaseNazwa bazy danych. Musi już istnieć.Nazwa z zakładki Baza danych–
data.username, data.passwordDane logowania.Z zakładki Baza danychPo kliknięciu Nowe hasło.
data.pool-settings.maximum-pool-sizeIle połączeń z bazą LuckPerms trzyma otwartych.10Zmniejsz (na przykład do 5), jeśli baza zgłasza zbyt wiele połączeń.
data.pool-settings.propertiesDodatkowe parametry połączenia.useUnicode: true, characterEncoding: utf8Dodaj useSSL: false, jeśli pojawia się ostrzeżenie o SSL.
data.table-prefixPrefiks tabel.'luckperms_'Inny prefiks, gdy dwa serwery mają mieć w jednej bazie osobne dane.
server (na początku pliku)Nazwa serwera dla uprawnień obowiązujących tylko na jednym serwerze w sieci.globalW sieci za proxy inna dla każdego serwera (lobby, survival).

Znaki specjalne w haśle

Hasło zawsze umieszczaj w pojedynczych cudzysłowach '…'. Inaczej YAML odczytałby znaki takie jak #, : czy % jako składnię. Jeśli hasło zawiera apostrof ', wpisz go podwójnie ('').

Przeniesienie istniejących uprawnień do MySQL#

Jeśli masz już uprawnienia w pierwotnym magazynie, przenieś je:

  1. Przed zmianą storage-method wpisz w konsoli:

    text
    lp export zaloha-opravneni
    • lp export – zapisuje wszystkie dane LuckPerms do pliku.
    • zaloha-opravneni – nazwa pliku. Powstanie plugins/LuckPerms/zaloha-opravneni.json.gz.
  2. Zatrzymaj serwer, zmień config.yml jak wyżej i uruchom serwer.

  3. Wpisz w konsoli:

    text
    lp import zaloha-opravneni.json.gz

    Nazwę pliku wpisz łącznie z rozszerzeniem .json.gz. Dane zostaną wczytane do nowej bazy.

CoreProtect#

  1. Zatrzymaj serwer.

  2. W zakładce Pliki otwórz plugins/CoreProtect/config.yml i zmień:

    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>'

    Rozdziel wartość Host z zakładki Baza danych: część przed dwukropkiem wpisz w <ADDRESS>, liczbę po dwukropku w <PORT>.

  3. Zapisz i uruchom serwer.

UstawienieCo robiZalecana wartośćKiedy zmieniać
use-mysqlPrzechowuje historię w MySQL zamiast w pliku.truefalse, aby wrócić do pliku.
table-prefixPrefiks tabel CoreProtect.co_Gdy CoreProtect z kilku serwerów używa jednej bazy.
mysql-hostAdres bazy danych bez portu.Część Host przed dwukropkiem–
mysql-portPort bazy danych.Część Host po dwukropku–
mysql-database, mysql-username, mysql-passwordNazwa bazy i dane logowania.Z zakładki Baza danychPo kliknięciu Nowe hasło.

Stara historia nie zostanie przeniesiona

Po przejściu na MySQL CoreProtect zaczyna nową historię. Dotychczasowe wpisy zostają w pliku w folderze plugins/CoreProtect, ale w MySQL ich nie będzie. Przejdź więc od razu na początku, a nie po roku działania serwera.

Nowsze wersje CoreProtect (od wersji 25) mają zamiast use-mysql klucz database-type. Jeśli widzisz go w pliku, ustaw database-type: mysql – ma pierwszeństwo przed use-mysql.

Inne pluginy#

Konfiguracje się różnią, ale pola są prawie zawsze takie same:

Pole w konfiguracji pluginuCo wpisać
host, hostname, addressAdres z wartości Host (bez portu, jeśli jest osobne pole na port).
portPort z wartości Host.
database, db-nameNazwa bazy danych.
username, userUżytkownik.
passwordHasło (w cudzysłowach).
useSSL, sslfalse, jeśli plugin zgłasza problemy z SSL.
jdbc-url, urlPełny adres w postaci jdbc:mysql://<ADDRESS>:<PORT>/<DATABASE_NAME> (dla sterownika MariaDB jdbc:mariadb://…).

Po zmianach zawsze uruchom serwer ponownie. Polecenie /reload często psuje pluginy korzystające z bazy danych.

Dostęp z komputera#

Bazę możesz przeglądać i edytować na komputerze. Działa to, jeśli Dozwolone połączenia z ma wartość %.

Windows

  1. Zainstaluj HeidiSQL z heidisql.com (otwiera się w nowym oknie).
  2. W oknie menedżera sesji kliknij New.
  3. Jako Network type wybierz MariaDB/MySQL (TCP/IP).
  4. W Hostname / IP wpisz adres, w Port port (oba z wartości Host), a w User i Password dane logowania.
  5. Kliknij Open.

macOS

  1. Zainstaluj DBeaver Community z dbeaver.io (otwiera się w nowym oknie).
  2. Wybierz Database › New Database Connection i typ MySQL (lub MariaDB).
  3. Wypełnij Server Host, Port, Database, Username i Password.
  4. Kliknij Test Connection, a potem Finish.

Linux

Użyj DBeaver Community z dbeaver.io (otwiera się w nowym oknie) (kroki jak na macOS) albo klienta w terminalu. Na Ubuntu i Debianie zainstalujesz go poleceniem apt install mariadb-client i połączysz się tak:

bash
mariadb -h <ADDRESS> -P <PORT> -u <USER> -p <DATABASE_NAME>
  • mariadb – klient dla MariaDB i MySQL.
  • -h <ADDRESS> – adres serwera bazy danych.
  • -P <PORT> – port (wielkie P).
  • -u <USER> – użytkownik.
  • -p – program zapyta o hasło (nie wpisuje się go do polecenia, więc nie trafi do historii).
  • <DATABASE_NAME> – baza, z którą chcesz pracować.

Nowsze klienty MariaDB (od wersji 11.4, na przykład na Debianie 13) domyślnie weryfikują certyfikat serwera bazy danych. Jeśli połączenie kończy się błędem TLS/SSL error wspominającym certyfikat, dodaj za mariadb przełącznik --disable-ssl-verify-server-cert (klient nie będzie wtedy sprawdzał certyfikatu serwera). Jeśli błąd mówi, że serwer nie obsługuje SSL, użyj zamiast tego przełącznika --disable-ssl.

Ostrożnie z edycją

Nie zmieniaj danych przy działającym serwerze – pluginy trzymają część danych w pamięci i nadpiszą Twoją zmianę. Przed każdą ręczną edycją zrób eksport.

Kopie zapasowe bazy danych#

Kopie zapasowe w zakładce Kopie zapasowe zawierają tylko pliki serwera, nie bazy danych. Eksportuj je osobno:

  1. Połącz się z bazą w HeidiSQL (patrz wyżej).
  2. Kliknij bazę po lewej i wybierz Tools › Export database as SQL.
  3. Zaznacz tworzenie tabel i dane, wybierz zapis do pliku .sql i kliknij Export.

Przywracanie: w HeidiSQL zaznacz bazę i wybierz File › Run SQL file. LuckPerms ma też własną kopię zapasową poleceniem lp export <FILE_NAME>.

Weryfikacja#

  • LuckPerms: wpisz w konsoli lp info. Sekcja Storage musi pokazywać Type: MySQL (lub MariaDB).
  • CoreProtect: wpisz w konsoli co status. Zobaczysz linię Database: Using MySQL.
  • W HeidiSQL lub DBeaverze zobaczysz w bazie nowe tabele (luckperms_…, co_…).

Rozwiązywanie problemów#

Plugin w ogóle nie dotarł do bazy (drugi komunikat pochodzi z CoreProtect). Sprawdź adres i port (wartość Host, dokładnie, łącznie z liczbą po dwukropku). W CoreProtect adres i port muszą być w osobnych polach. Jeśli wszystko się zgadza, serwer bazy może być chwilowo niedostępny – spróbuj ponownie za chwilę albo skontaktuj się z pomocą techniczną.

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

Baza odrzuciła nazwę użytkownika lub hasło:

  • W międzyczasie zmieniłeś hasło przyciskiem Nowe hasło, a plugin ma wciąż stare.
  • Hasło zawiera znaki specjalne i nie jest w cudzysłowach.
  • Dozwolone połączenia z zawiera konkretny adres IP, z którego serwer się nie łączy. Utwórz nową bazę z %.

Unknown database '…'#

Nazwa bazy się nie zgadza. Skopiuj ją dokładnie z zakładki Baza danych, łącznie z ewentualnym prefiksem.

Ostrzeżenie: Establishing SSL connection without server's identity verification is not recommended#

To ostrzeżenie sterownika MySQL. W LuckPerms dodaj do data.pool-settings.properties wartości useSSL: false i verifyServerCertificate: false; w innych pluginach szukaj opcji useSSL.

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

LuckPerms nie dostał połączenia ze swojej puli. Baza jest niedostępna albo osiągnięto limit połączeń. Każdy serwer z LuckPerms trzyma domyślnie 10 połączeń – jeśli do bazy kieruje się ich więcej (sieć serwerów, inne pluginy), zmniejsz maximum-pool-size.

No operations allowed after connection closed#

Baza zamknęła nieaktywne połączenie, zanim plugin je odnowił. W LuckPerms maximum-lifetime (w milisekundach) musi być krótszy niż limit czasu bazy. Domyślne 30 minut zwykle działa.

Podsumowanie

  • Bazę utworzysz w zakładce Baza danych, a Dozwolone połączenia z zostaw na %.
  • Dane kopiuj dokładnie, a hasło w YAML umieszczaj w pojedynczych cudzysłowach.
  • LuckPerms: storage-method: mysql i sekcja data; istniejące dane przeniesiesz poleceniami lp export i lp import.
  • CoreProtect: use-mysql: true, adres i port wpisz osobno; stara historia nie zostanie przeniesiona.
  • Bazy danych nie są częścią kopii zapasowych serwera – eksportuj je osobno (HeidiSQL).

Czy ten poradnik był pomocny?

Dotyczy

  • Paper, Purpur, Folia
  • Fabric, NeoForge (mody z obsługą MySQL)
  • LuckPerms
  • CoreProtect

Usługi

Zgłoś błąd w poradniku

Wyszukiwanie w poradnikach