Jak bezboleśnie wykonać aktualizację do nowszej wersji lokalnego serwera WWW?
Jest kilka dróg aktualizacji oprogramowania bez straty własnych danych – w niniejszym artykule przedstawię preferowany i sprawdzony przeze mnie sposób.
Podejście#1 - krótko i konkretnie – skopiuj i zastąp katalogi z danymi
Kroki:
- Zrób backup katalogów:
- \xampp\htdocs
- \xampp\mysql\data
- przeinstaluj XAMPP
- zastąp w/w katalogi
Niestety w/w rozwiązanie nie zabezpieczy naszych baz MySQL jeśli wykonujemy aktualizację XAMPP z wersji sprzed 5.5.30 do nowszej. Różnica polega na zastąpieniu softu bazodanowego z MySQL na MariaDB.
Szczegóły w oficjalnej notce.
Tak więc szybkie kopiuj-wklej katalogu „mysql/data” nie zadziała!
Ważna informacja:
Jeśli w ramach swojej instalacji XAMPP modyfikowałeś/-aś ustawienia takie jak PHP (php.ini), Apache (httpd.conf) itp., - pamiętaj o skopiowaniu tych plików konfiguracyjnych i ponowną ręczną edycję swoich parametrów (bezpośrednie nadpisywanie przy zmianie wersji PHP nie jest wskazane).
Podejście#2 (rekomendowane) - pełny backup wraz z exportem baz SQL
Pełny backup naszych danych jest 5 etapowy:
- Kopia/export wszystkich baz danych i import na nowy serwer SQL
- Zachowanie starego folderu „xampp” poprzez zmianę jego nazwy
- Instalacja nowej wersji pakietu XAMPP
- Kopia/przeniesienie plików naszych witryn/serwisów
- Import danych SQL na „nowy” serwer
- + opcjonalny krok: migracja ustawień/ponowna konfiguracja XAMPP wg naszych preferencji.
#2.1 backup SQL
1. Uruchom XAMPP Control Panel jako administrator i wystartuj z Apache oraz MySQL:
2. Otwórz okno konsoli = przycisk z prawej kolumny z opcjami: Shell
3. Wpisz/wklej komendę:
mysqldump -u root -p --all-databases > all-db-dump.sql
4. Jeśli zmodyfikowałeś domyślne ustawienia dot. usera czy hasła – zmień odpowiednio wartości dla parametrów –u i -p.
Jeśli natomiast hasło zostawiłeś puste zatwierdź ENTER’em.
5. W rezultacie otrzymasz plik-zrzut z bazy: “all-db-dump.sql”, który zawiera wszystkie bazy MySQL, jakie posiadasz na swoim lokalnym serwerze w ramach XAMPP. Plik-export
został zapisany w głównym katalogu XAMPP na Twoim kompie.
6. Zamknij konsolę poleceniem: exit i [Enter]
7. Wyłącz serwery Apache i MySQL oraz program XAMPP Control Panel.
#2.2 backup folderu XAMPP
Najprostszą metodą backup jest po prostu zmiana nazwy – tak więc zmień nazwę folderu ‘xampp’ na ‘xampp-backup’ (lub podobny).
Dzięki czemu zachowasz pełną kopię na wszelki wypadek – stąd też w następnym kroku pobierzemy pliki witryn/stron/projektów www (zawartość FTP).
#2.3 instalacja nowej wersji
Pobierz i zainstaluj preferowaną wersję pakietu XAMPP.
Najnowsza wersja do sprawdzenia tutaj
Pamiętaj aby zachować uprzednio używaną ścieżkę, czyli np.: e:\xampp\
Po pomyślnej instalacji uruchom XAMPP Control Panel jako user z uprawnieniami administratora w Twoim systemie MS Windows.
Uruchom usługi Apache i MySQL.
Odwiedź Localhost oraz PhpMyAdmin, aby upewnić się, że całość działa prawidłowo.
#2.4 przywróć zawartość swoich FTP witryn
Skopiuj zawartość swoich serwisów z \xampp-backup\htdocs\ i wklej do: \xampp\htdocs\.
#2.5 import baz danych
#2.5.1. Przygotowanie:
Znajdź i otwórz do edycji plik konfiguracyjny: xampp\php\php.ini
Sprawdź i wyedytuj wartości dla parametrów:
- upload_max_filesize
- memory_limit
- post_max_size
tak aby post_max_size oraz memory_limit miały wyższą wartość niż upload_max_filesize, a wartość dla upload_max_filesize musi być większa niż rozmiar pliku z naszym zrzutem SQL.
Zapisz zmiany.
Znajdź i otwórz do edycji następny plik ‘xampp\phpMyAdmin\libraries\config.default.php’
zmień wartość dla klucza: $cfg[‘ExecTimeLimit’] = 300; na znacznie wyższą, np.: 6000.
Na koniec restart usług: Apache i MySQL
#2.5.2. Import poprzez PhpMyAdmin
Otwórz phpMyAdmin (http://localhost/phpmyadmin/) > Import
Zaimportuj plik zrzutu ‘all-db-dump.sql’ – w zależności od rozmiaru pliku proces ten może potrwać nawet kilka minut.
Po komunikacie: “Import zakończony sukcesem, wykonano XXXX zapytań. (all-db-dump.sql)” lub w wersji angielskiej: “Import has been successfully finished” uruchom konsole Shell i uruchom komendę: mysql_upgrade
I to wszystko! Teraz pora na testy własnych stron/serwisów hostowanych w ramach nowej wersji XAMPP!