Discord
Wiki - Serwery

Migracja serwera Minecraft

Zmiana hostingu, przeprowadzka na VPS, przejscie z domowego komputera na profesjonalny serwer. Ten poradnik pokaze, jak przeniesc serwer Minecraft bez utraty danych i z minimalnym downtime.

Czas czytania: ~13 min Poziom: Średniozaawansowany / Zaawansowany

Kiedy warto migrowac serwer

Migracja serwera to powazna operacja, ale czasem konieczna. Najczestsze powody:

  • Przeniesienie z domowego komputera na hosting - serwer rosl i potrzebuje stabilności 24/7, ochrony DDoS i lepszego lacza. To najczestszy scenariusz.
  • Zmiana dostawcy hostingu - obecny hosting jest za drogi, ma slaba wydajność lub kiepski support. Porównanie hostingow znajdziesz w poradniku hostingow.
  • Upgrade sprzetu - serwer potrzebuje więcej RAM, lepszego CPU lub szybszego dysku.
  • Zmiana lokalizacji - przeniesienie serwera bliżej graczy (np. z USA do Europy) zmniejsza ping.
  • Zmiana oprogramowania - przejscie z Vanilla na Paper lub z Spigota na Purpur.

Planowanie migracji

Nie przenosisz serwera w porywie chwili. Zaplanuj migracje z wyprzedzeniem:

Lista kontrolna przed migracja

  1. Wybierz termin - najlepiej noca lub w dzien o najmniejszej aktywności graczy. Poinformuj graczy z wyprzedzeniem (min. 24h).
  2. Sprawdź wymagania nowego serwera - wersja Java, ilość RAM, dysk SSD, system operacyjny.
  3. Zrob listę pluginow - zapisz wersje każdego pluginu. Niektore pluginy mają problemy z kompatybilnoscia między wersjami.
  4. Zmierz rozmiar danych - ile waza światy, pluginy i bazy danych. Bedziesz wiedziec, ile czasu zajmie transfer.
  5. Przygotuj plan B - jeśli cos pojdzie nie tak, musisz moc szybko wrocic do starego serwera.

Komunikacja z graczami: Poinformuj graczy na Discordzie, w MOTD serwera i na stronie. Podaj planowany czas downtime (zwykłe 1-3 godziny). Gracze sa cierpliwi, jeśli wiedza, co się dzieje. Sa wsciekli, jeśli serwer znika bez slowa.

Krok 1: Pełny backup

Pierwsza i najważniejsza zasada migracji: zrob pełna kopie zapasowa ZANIM cokolwiek zmienisz. Szczegolowy poradnik w artykule o backupach. Skrocona wersja:

# W konsoli serwera: save-all save-off # W terminalu systemowym: tar -czf /home/minecraft/migration-backup-$(date +%Y%m%d).tar.gz \ -C /home/minecraft/server . # Z powrotem w konsoli serwera: save-on

Upewnij się, ze backup zawiera:

  • Wszystkie foldery światów (world/, world_nether/, world_the_end/, światy Multiverse)
  • Cały folder plugins/ z konfiguracjami
  • server.properties, whitelist.json, ops.json, banned-players.json
  • Dump bazy danych MySQL/MariaDB (jeśli uzywasz)
  • Pliki startowe (start.sh / start.bat)

Zapisz kopie w dwoch miejscach: na dysku lokalnym i w chmurze (Google Drive, Backblaze B2). Jeśli cos pojdzie nie tak podczas migracji, ten backup jest Twoja polisa ubezpieczeniowa.

Krok 2: Przygotowanie nowego serwera

VPS / serwer dedykowany (Linux)

# Zainstaluj Jave (Ubuntu/Debian) sudo apt update sudo apt install openjdk-21-jre-headless -y # Sprawdź wersje java -version # Stworz użytkownika minecraft (nie uruchamiaj serwera jako root!) sudo adduser minecraft sudo su - minecraft # Stworz folder serwera mkdir ~/server cd ~/server

Panel serwerowy (Pterodactyl, AMP)

Jeśli nowy hosting używa panelu, stworz nowy serwer w panelu i skonfiguruj:

  • Wersje Java (21 dla MC 1.20.5+)
  • Ilość RAM (tyle samo lub więcej niz na starym serwerze)
  • Port (domyslnie 25565)
  • Oprogramowanie serwerowe (Paper, Spigot, Vanilla)

Hosting z panelem (Multicraft, CraftServe)

Na hostingach z gotowym panelem zazwyczaj masz opcje "Import serwera" lub "Upload plikow" przez panel lub SFTP. Skontaktuj się z supportem hostingu, jeśli nie wiesz, jak przesylac pliki.

Krok 3: Transfer plikow

Przenoszenie danych między serwerami. Wybierz metode w zależności od rozmiaru danych i dostepu do serwerow.

SFTP (graficzny klient)

Najlepsza metoda dla osob preferujacych interfejs graficzny. Uzyj klienta FileZilla lub WinSCP:

  1. Polacz się z nowym serwerem przez SFTP (port 22)
  2. Przejdz do folderu serwera
  3. Przeslij archiwum backupu lub poszczegolne foldery
  4. Rozpakuj archiwum na serwerze

rsync (najszybsze dla dużych danych)

# Skopiuj cały serwer na nowa maszyne rsync -avz --progress \ -e "ssh -p 22" \ /home/minecraft/server/ \ minecraft@nowy-serwer.pl:/home/minecraft/server/ # Skopiuj tylko światy (pomijajac reszty) rsync -avz --progress \ -e "ssh -p 22" \ /home/minecraft/server/world* \ minecraft@nowy-serwer.pl:/home/minecraft/server/

rsync przesyla tylko zmienione pliki, wiec jeśli robisz kilka transferow (np. testowy + finalny), drugi transfer jest dużo szybszy.

SCP (prosty transfer)

# Przeslij archiwum backupu scp /home/minecraft/migration-backup.tar.gz \ minecraft@nowy-serwer.pl:/home/minecraft/ # Na nowym serwerze rozpakuj ssh minecraft@nowy-serwer.pl cd /home/minecraft/server tar -xzf ../migration-backup.tar.gz

Czas transferu

Orientacyjne czasy dla typowych rozmiarow danych na laczu 100 Mbps:

  • 1 GB (mały serwer): ~2 minuty
  • 5 GB (średni serwer): ~8 minut
  • 20 GB (duży serwer): ~30 minut
  • 50 GB (bardzo duży serwer): ~1.5 godziny

Wskazówka: Jeśli dane sa ogromne (50+ GB), rozważ kompresje przed transferem. tar -czf może zmniejszyć rozmiar światów o 30-50%. Albo uzyj rsync z opcja --compress.

Krok 4: Testy i uruchomienie

Wstepne testy

  1. Uruchom serwer na nowej maszynie - uzyj tych samych flag startowych co na starym serwerze. Sprawdź logi pod katem błędów.
  2. Dołącz i sprawdź światy - przejdz się po mapie, sprawdź czy budowle sa na miejscu, czy chunki laduja się poprawnie.
  3. Zweryfikuj pluginy - sprawdź /plugins, czy wszystkie pluginy sa zaladowane (zielone = OK, czerwone = błąd). Napraw ewentualne konflikty.
  4. Przetestuj kluczowe funkcje - rangi (LuckPerms), economy, claimy, komendy, teleportacja między światami.
  5. Sprawdź wydajność - TPS powinno być 20.0. Uzyj /spark profiler jeśli widzisz spadki.

Przełaczanie graczy

Gdy testy wypadna pozytywnie:

  1. Wyłącz stary serwer (/stop)
  2. Upewnij się, ze nowy serwer działa
  3. Jeśli uzywasz domeny - przełacz DNS (szczegóły niżej)
  4. Jeśli nie masz domeny - podaj graczom nowy adres IP

Nie usuwaj starego serwera od razu! Trzymaj go jeszcze min. tydzien po migracji. Jeśli na nowym serwerze cos nie zadziala, możesz szybko wrocic do starego.

DNS i domena

Jeśli Twoj serwer używa domeny (np. mc.mojserwer.pl), musisz zaktualizowac rekordy DNS, zeby domena wskazywala na nowy adres IP.

Rekord A (standardowy)

# W panelu DNS dostawcy domeny (np. Cloudflare, OVH, home.pl): # Typ: A # Nazwa: mc (lub @ jesli cała domena) # Wartość: 123.456.789.0 (nowy IP serwera) # TTL: 300 (5 minut, zeby zmiana propagowala się szybko)

Rekord SRV (niestandardowy port)

Jeśli nowy serwer działa na innym porcie niz 25565, uzyj rekordu SRV:

# Typ: SRV # Nazwa: _minecraft._tcp.mc # Priorytet: 0 # Waga: 5 # Port: 25567 (nowy port) # Cel: mc.mojserwer.pl # TTL: 300

Propagacja DNS

Zmiana DNS może trwac od kilku minut do 48 godzin, w zależności od TTL i dostawcow DNS graczy. Aby zminimalizowac downtime:

  • Obniz TTL na 300 sekund (5 minut) na 24-48 godzin PRZED migracja
  • Zmien IP w DNS tuz po wylaczeniu starego serwera
  • Po propagacji (1-2 dni) możesz przywrócić TTL na normalna wartość (3600 sekund)

Bez domeny? Jeśli gracze lacza się bezpośrednio przez IP, po prostu podaj im nowy adres. Rozważ zakup domeny (od ~25 zl/rok za .pl), zeby w przyszlosci moc zmieniac IP bez informowania graczy.

Migracja bazy danych

Jeśli pluginy korzystaja z MySQL/MariaDB (LuckPerms, LiteBans, ekonomia, statystyki), musisz przeniesc baze danych osobno.

Export ze starego serwera

# Export całej bazy danych mysqldump -u minecraft -p nazwa_bazy > minecraft_db_backup.sql # Export konkretnych tabel mysqldump -u minecraft -p nazwa_bazy tabela1 tabela2 > minecraft_tables.sql

Import na nowy serwer

# Stworz baze danych na nowym serwerze mysql -u root -p CREATE DATABASE nazwa_bazy; CREATE USER 'minecraft'@'localhost' IDENTIFIED BY 'bezpieczne_haslo'; GRANT ALL PRIVILEGES ON nazwa_bazy.* TO 'minecraft'@'localhost'; FLUSH PRIVILEGES; EXIT; # Zaimportuj dane mysql -u minecraft -p nazwa_bazy < minecraft_db_backup.sql

Pamietaj o zaktualizowaniu danych połączenia z baza danych w konfiguracji pluginow (LuckPerms config.yml, LiteBans config.yml itp.). Zmien host, port, nazwe bazy, użytkownika i haslo.

Pluginy z plikami H2/SQLite

Jeśli pluginy używają lokalnych baz H2 lub SQLite (domyslna konfiguracja LuckPerms i wielu innych pluginow), pliki bazy danych sa w folderze pluginu i zostaly skopiowane razem z plugins/. Nie musisz robic nic dodatkowego.

Zmiana oprogramowania serwerowego

Migracja to dobry moment na zmianę oprogramowania serwerowego. Najczestsze scenariusze:

Vanilla/Spigot na Paper

Paper jest kompatybilny ze Spigot/Bukkit pluginami. Migracja jest prosta:

  1. Pobierz Paper w tej samej wersji Minecraft
  2. Zamien plik .jar serwera
  3. Zaktualizuj skrypt startowy z nowa nazwa pliku
  4. Uruchom serwer. Paper wygeneruje dodatkowe pliki konfiguracyjne (paper-global.yml, paper-world-defaults.yml)

Uwaga: Paper naprawia niektóre exploity Vanilla, co może wplynac na działanie farm graczy (np. duplikacja TNT, niektorx farmy zero-tickowe). Sprawdź changelog Papera i poinformuj graczy o potencjalnych zmianach.

Zmiana wersji Minecraft

Jeśli przy migracji aktualizujesz tez wersje Minecraft (np. z 1.20.4 na 1.21.4):

  • Zaktualizuj wszystkie pluginy do wersji kompatybilnych z nowa wersja MC
  • Zrob backup PRZED aktualizacja (światy po konwersji nie da się cofnac)
  • Sprawdź changelog danej wersji MC pod katem breaking changes
  • Przetestuj na kopii świata, nie na produkcji

Co dalej?

Serwer przeniesiony. Oto co warto zrobić po migracji:

Komentarze