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: Sredniozaawansowany / 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 stabilnosci 24/7, ochrony DDoS i lepszego lacza. To najczestszy scenariusz.
  • Zmiana dostawcy hostingu - obecny hosting jest za drogi, ma slaba wydajnosc lub kiepski support. Porownanie hostingow znajdziesz w poradniku hostingow.
  • Upgrade sprzetu - serwer potrzebuje wiecej RAM, lepszego CPU lub szybszego dysku.
  • Zmiana lokalizacji - przeniesienie serwera blizej 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 aktywnosci graczy. Poinformuj graczy z wyprzedzeniem (min. 24h).
  2. Sprawdz wymagania nowego serwera - wersja Java, ilosc RAM, dysk SSD, system operacyjny.
  3. Zrob liste pluginow - zapisz wersje kazdego pluginu. Niektore pluginy maja problemy z kompatybilnoscia miedzy wersjami.
  4. Zmierz rozmiar danych - ile waza swiaty, pluginy i bazy danych. Bedziesz wiedziec, ile czasu zajmie transfer.
  5. Przygotuj plan B - jesli 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 (zwykle 1-3 godziny). Gracze sa cierpliwi, jesli wiedza, co sie dzieje. Sa wsciekli, jesli serwer znika bez slowa.

Krok 1: Pelny backup

Pierwsza i najwazniejsza zasada migracji: zrob pelna 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 sie, ze backup zawiera:

  • Wszystkie foldery swiatow (world/, world_nether/, world_the_end/, swiaty Multiverse)
  • Caly folder plugins/ z konfiguracjami
  • server.properties, whitelist.json, ops.json, banned-players.json
  • Dump bazy danych MySQL/MariaDB (jesli uzywasz)
  • Pliki startowe (start.sh / start.bat)

Zapisz kopie w dwoch miejscach: na dysku lokalnym i w chmurze (Google Drive, Backblaze B2). Jesli 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 # Sprawdz wersje java -version # Stworz uzytkownika minecraft (nie uruchamiaj serwera jako root!) sudo adduser minecraft sudo su - minecraft # Stworz folder serwera mkdir ~/server cd ~/server

Panel serwerowy (Pterodactyl, AMP)

Jesli nowy hosting uzywa panelu, stworz nowy serwer w panelu i skonfiguruj:

  • Wersje Java (21 dla MC 1.20.5+)
  • Ilosc RAM (tyle samo lub wiecej 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 sie z supportem hostingu, jesli nie wiesz, jak przesylac pliki.

Krok 3: Transfer plikow

Przenoszenie danych miedzy serwerami. Wybierz metode w zaleznosci od rozmiaru danych i dostepu do serwerow.

SFTP (graficzny klient)

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

  1. Polacz sie 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 duzych danych)

# Skopiuj caly serwer na nowa maszyne rsync -avz --progress \ -e "ssh -p 22" \ /home/minecraft/server/ \ minecraft@nowy-serwer.pl:/home/minecraft/server/ # Skopiuj tylko swiaty (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 jesli 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 (maly serwer): ~2 minuty
  • 5 GB (sredni serwer): ~8 minut
  • 20 GB (duzy serwer): ~30 minut
  • 50 GB (bardzo duzy serwer): ~1.5 godziny

Wskazowka: Jesli dane sa ogromne (50+ GB), rozważ kompresje przed transferem. tar -czf moze zmniejszyc rozmiar swiatow 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. Sprawdz logi pod katem bledow.
  2. Dolacz i sprawdz swiaty - przejdz sie po mapie, sprawdz czy budowle sa na miejscu, czy chunki laduja sie poprawnie.
  3. Zweryfikuj pluginy - sprawdz /plugins, czy wszystkie pluginy sa zaladowane (zielone = OK, czerwone = blad). Napraw ewentualne konflikty.
  4. Przetestuj kluczowe funkcje - rangi (LuckPerms), economy, claimy, komendy, teleportacja miedzy swiatami.
  5. Sprawdz wydajnosc - TPS powinno byc 20.0. Uzyj /spark profiler jesli widzisz spadki.

Przełaczanie graczy

Gdy testy wypadna pozytywnie:

  1. Wylacz stary serwer (/stop)
  2. Upewnij sie, ze nowy serwer dziala
  3. Jesli uzywasz domeny - przełacz DNS (szczegoly nizej)
  4. Jesli nie masz domeny - podaj graczom nowy adres IP

Nie usuwaj starego serwera od razu! Trzymaj go jeszcze min. tydzien po migracji. Jesli na nowym serwerze cos nie zadziala, mozesz szybko wrocic do starego.

DNS i domena

Jesli Twoj serwer uzywa 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 cala domena) # Wartosc: 123.456.789.0 (nowy IP serwera) # TTL: 300 (5 minut, zeby zmiana propagowala sie szybko)

Rekord SRV (niestandardowy port)

Jesli nowy serwer dziala 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 moze trwac od kilku minut do 48 godzin, w zaleznosci 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) mozesz przywrocic TTL na normalna wartosc (3600 sekund)

Bez domeny? Jesli gracze lacza sie bezposrednio 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

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

Export ze starego serwera

# Export calej 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 polaczenia z baza danych w konfiguracji pluginow (LuckPerms config.yml, LiteBans config.yml itp.). Zmien host, port, nazwe bazy, uzytkownika i haslo.

Pluginy z plikami H2/SQLite

Jesli pluginy uzywaja 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 zmiane 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 niektore exploity Vanilla, co moze wplynac na dzialanie farm graczy (np. duplikacja TNT, niektorx farmy zero-tickowe). Sprawdz changelog Papera i poinformuj graczy o potencjalnych zmianach.

Zmiana wersji Minecraft

Jesli 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 (swiaty po konwersji nie da sie cofnac)
  • Sprawdz changelog danej wersji MC pod katem breaking changes
  • Przetestuj na kopii swiata, nie na produkcji

Co dalej?

Serwer przeniesiony. Oto co warto zrobic po migracji:

Komentarze