Przewodnik po zarządzaniu plikami baz danych i migracji w ServBay
ServBay, jako zaawansowane lokalne środowisko do tworzenia aplikacji webowych, integruje popularne systemy zarządzania bazami danych i zapewnia im uporządkowane zarządzanie plikami. Zrozumienie domyślnej struktury przechowywania plików baz danych w ServBay jest kluczowe dla backupu, przywracania i migracji danych.
W tym artykule znajdziesz szczegółowy opis domyślnej organizacji plików baz danych w ServBay oraz instrukcje zarządzania i migracji danych z wykorzystaniem narzędzi CLI.
TIP
ServBay oferuje funkcje backupu i przywracania danych — możesz wykonywać kopie zapasowe MySQL, MariaDB i PostgreSQL automatycznie lub ręcznie. Zobacz Backup i przywracanie, aby dowiedzieć się więcej.
Domyślna struktura plików baz danych w ServBay
Aby ułatwić organizację i separację danych różnych wersji baz, ServBay przechowuje pliki baz danych w katalogu głównym /Applications/ServBay/db
. Katalog ten jest podzielony na typy baz, a następnie na wersje główne (major version).
Przykładowa struktura katalogów /Applications/ServBay/db
:
/Applications/ServBay/db
├── mysql
│ ├── 8.0
│ └── 8.1
├── mariadb
│ ├── 10.10
│ ├── 10.11
│ ├── 10.5
│ ├── 10.6
│ ├── 10.7
│ ├── 10.8
│ ├── 10.9
│ ├── 11.0
│ ├── 11.1
│ ├── 11.2
│ └── 11.3
├── postgresql
│ ├── 10
│ ├── 11
│ ├── 12
│ ├── 13
│ ├── 14
│ ├── 15
│ └── 16
└── redis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Opis struktury katalogów
/Applications/ServBay/db
: Główny katalog przechowywania plików wszystkich baz danych w ServBay.mysql
: Pliki danych MySQL; podkatalogi według wersji głównej (np.8.0
,8.1
).mariadb
: Pliki danych MariaDB; podkatalogi według wersji głównej (np.10.11
,11.3
).postgresql
: Pliki danych PostgreSQL; podkatalogi według wersji głównej (np.15
,16
).redis
: Plik persistentny Redis, zazwyczajdump.rdb
.
Taka organizacja umożliwia instalację i równoległą pracę z wieloma wersjami tego samego typu bazy w ServBay — pliki są odizolowane i nie wpływają na siebie nawzajem.
Zarządzanie plikami baz danych
W lokalnym środowisku developerskim często wykonuje się backup, przywracanie oraz migrację baz danych. Poniżej opisano, jak wykonać te operacje za pomocą narzędzi CLI. Pamiętaj, aby korzystać z terminala ServBay lub odpowiednio ustawić zmienne środowiskowe, by mieć dostęp do odpowiednich klienta baz danych.
Backup bazy danych
Regularny backup to podstawa bezpieczeństwa danych. Oto przykłady backupu dla różnych typów baz w ServBay.
Backup MySQL
Do backupu MySQL użyj mysqldump
:
bash
# Przełącz się do środowiska terminalowego ServBay, lub upewnij się, że katalog bin ServBay jest w PATH
# np.: export PATH="/Applications/ServBay/bin:$PATH"
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
4
2
3
4
your_username
: Twój login do bazy.your_database
: Nazwa bazy, którą backupujesz./Applications/ServBay/backup/your_database.sql
: Ścieżka i nazwa pliku backupu (zaleca się przechowywać niezależnie, np. w katalogu domowym użytkownika).
Backup MariaDB
Backup MariaDB przebiega identycznie — również z użyciem mysqldump
.
bash
# Terminal ServBay lub odpowiednio ustawiony PATH
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- Opis parametrów jak wyżej.
Backup PostgreSQL
Backup PostgreSQL wykonujemy poprzez pg_dump
. W ServBay PostgreSQL najczęściej korzysta z Unix Domain Socket o ścieżce /Applications/ServBay/tmp
, wskazanej parametrem -h
.
bash
# Terminal ServBay lub odpowiednio ustawiony PATH
pg_dump -h /Applications/ServBay/tmp -U your_username -d your_database -F c -b -v -f /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parametry połączeniowe:
- macOS:
-h /Applications/ServBay/tmp
- Windows:
-h localhost -p 5432
- macOS:
-U your_username
: Login do bazy.-d your_database
: Nazwa bazy do backupu.-F c
: Zapis w formacie archiwum PostgreSQL (zalecane).-b
: Zawiera duże obiekty.-v
: Szczegółowy output.-f ...
: Ścieżka pliku backupu.
Backup Redis
Backup Redis polega na skopiowaniu jego pliku persistentnego dump.rdb
.
bash
# Przełącz się do środowiska terminalowego ServBay
# Sprawdź, czy Redis działa lub czy BGSAVE jest skonfigurowane
cp /Applications/ServBay/db/redis/dump.rdb /Applications/ServBay/backup/dump.rdb
1
2
3
4
2
3
4
/Applications/ServBay/db/redis/dump.rdb
: Domyślny plik Redis./Applications/ServBay/backup/dump.rdb
: Docelowa lokalizacja backupu.
Przywracanie bazy danych
Backup pozwala na odtworzenie danych po awarii lub cofnięcie do wcześniejszego stanu.
Przywracanie MySQL
Użyj klienta mysql
, by przywrócić backup:
bash
# Terminal ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
your_username
: Login do bazy.your_database
: Nazwa istniejącej bazy docelowej (powinna być wcześniej utworzona)./Applications/ServBay/backup/your_database.sql
: Ścieżka backupu.
Przywracanie MariaDB
Analogicznie dla MariaDB — także przez klienta mysql
.
bash
# Terminal ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- Opis parametrów jak wyżej.
Przywracanie PostgreSQL
Przywracanie backupu w formacie archiwum wymaga pg_restore
, z podaniem ścieżki socketu.
bash
# Terminal ServBay
pg_restore -h /Applications/ServBay/tmp -U your_username -d your_database -v /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parametry połączeniowe:
- macOS:
-h /Applications/ServBay/tmp
- Windows:
-h localhost -p 5432
- macOS:
-U your_username
: Login do bazy.-d your_database
: Nazwa docelowej bazy (powinna być wcześniej utworzona).-v
: Szczegółowy output.- Backup: Ścieżka pliku backupu.
- macOS:
/Applications/ServBay/backup/your_database.dump
- Windows:
C:\ServBay\backup\your_database.dump
- macOS:
Przywracanie Redis
Przywrócenie Redis polega na skopiowaniu backupu dump.rdb
do katalogu danych Redis. Uwaga: przed tym działaniem zatrzymaj Redis!
bash
# Terminal ServBay
# Zatrzymaj usługę Redis w ServBay
# Skopiuj backup
cp /Applications/ServBay/backup/dump.rdb /Applications/ServBay/db/redis/dump.rdb
# Włącz ponownie Redis w ServBay
1
2
3
4
5
2
3
4
5
/Applications/ServBay/backup/dump.rdb
: Backup./Applications/ServBay/db/redis/dump.rdb
: Domyślny plik Redis.
Migracja baz danych
Migracja polega na przeniesieniu bazy między środowiskami (np. drugim ServBay, serwerem zdalnym lub lokalnym). Najpierw eksportuje się dane ze źródła, potem importuje do docelowego środowiska.
Migracja MySQL
Jak migrować MySQL — typowy scenariusz w codziennej pracy.
Eksport bazy w źródłowym środowisku:
bash# Terminal źródłowego środowiska mysqldump -u your_source_username -p your_database > your_database.sql
1
2your_source_username
: Login źródłowy.your_database
: Nazwa bazy do migracji.your_database.sql
: Output.
Przenieś plik SQL do środowiska docelowego: Użyj
scp
lub innego narzędzia, by przesłać plik do ServBay (np./Applications/ServBay/backup/
).Utwórz bazę docelową w ServBay:
bash# Terminal ServBay docelowy mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2your_target_username
: Login docelowy.your_database
: Nazwa bazy (identyczna jak źródłowa).
Zaimportuj dane do ServBay:
bash# Terminal ServBay docelowy mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2/path/to/your_database.sql
: Lokalizacja pliku SQL.
Migracja MariaDB
Migracja MariaDB przebiega analogicznie do migracji MySQL — te same narzędzia i formaty.
- Eksport danych w źródle:bash
# Terminal źródłowego środowiska mysqldump -u your_source_username -p your_database > your_database.sql
1
2 - Przesyłka SQL do docelowego ServBay.
- Utworzenie bazy w ServBay:bash
# Terminal ServBay docelowy mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2 - Import danych do ServBay:bash
# Terminal ServBay docelowy mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2
Migracja PostgreSQL
Migracja PostgreSQL korzysta z pg_dump
i pg_restore
oraz z odpowiednio skonfigurowanego socketu.
Eksport w źródle:
bash# Terminal źródłowy # Jeśli źródło to ServBay pg_dump -h /Applications/ServBay/tmp -U your_source_username -d your_database -F c -b -v -f your_database.dump # Jeśli inny system, dostosuj parametry połączenia
1
2
3
4your_source_username
: Login.your_database
: Nazwa bazy.your_database.dump
: Nazwa backupu.
Przesyłka backupu do ServBay:
scp
lub inne narzędzie.Utworzenie nowej bazy w ServBay:
bash# Terminal ServBay docelowy # Połącz się z domyślną bazą postgres i utwórz nową psql -h /Applications/ServBay/tmp -U your_target_username -d postgres -c "CREATE DATABASE your_database;"
1
2
3your_target_username
: Login docelowy.your_database
: Nazwa bazy.
Import backupu do ServBay:
bash# Terminal ServBay docelowy pg_restore -h /Applications/ServBay/tmp -U your_target_username -d your_database -v /path/to/your_database.dump
1
2/path/to/your_database.dump
: Lokalizacja backupu.
Migracja Redis
Migracja Redis to bezpośrednie kopiowanie pliku dump.rdb
.
Pobierz
dump.rdb
ze źródła:bash# Terminal źródłowy # Upewnij się, że Redis jest zatrzymany lub poczekaj na ukończenie BGSAVE cp /path/to/source/redis/dump.rdb ./dump.rdb
1
2
3Prześlij plik do docelowego ServBay:
bash# Terminal źródłowy lub zdalny scp ./dump.rdb your_target_server:/Applications/ServBay/db/redis/dump.rdb
1
2your_target_server
: Adres serwera ServBay.- Ważne: Przed skopiowaniem do katalogu Redis w ServBay zatrzymaj usługę Redis!
Uruchom Redis w ServBay: Po starcie Redis automatycznie załaduje nowy plik.
Ważne wskazówki
- Zatrzymywanie usług: Przed bezpośrednim kopiowaniem plików bazy (szczególnie katalogów MySQL/MariaDB/PostgreSQL) koniecznie zatrzymaj usługę baz danych przez GUI ServBay lub CLI. Kopiowanie plików podczas działania usługi grozi utratą lub uszkodzeniem danych. Redis przy operacjach na
dump.rdb
także powinien być zatrzymany. - Uprawnienia: Sprawdź, czy masz odpowiednie uprawnienia do kopiowania, przenoszenia lub importu plików i katalogów.
- Ścieżki: Zweryfikuj ścieżki do instalacji ServBay (domyślnie
/Applications/ServBay
) oraz odpowiednie podkatalogi danych każdej wersji bazy. - Użytkownicy i uprawnienia w bazie: Po migracji sprawdź, czy użytkownicy, uprawnienia i konfiguracje bazy wymagają dostosowania do nowego środowiska.
- Wbudowany backup ServBay: ServBay oferuje intuicyjne, wbudowane funkcje backupu i przywracania poprzez GUI — zapisuje ustawienia, pliki stron, bazy oraz certyfikaty SSL; stanowi wygodne uzupełnienie lub alternatywę dla ręcznego zarządzania plikami.
Podsumowanie
ServBay zapewnia klarowną, uporządkowaną strukturę plików baz danych, ułatwiając zarządzanie i migrację. W powyższym poradniku omówiono lokalizację plików dla MySQL, MariaDB, PostgreSQL i Redis w ServBay oraz podano praktyczne instrukcje backupu, przywracania i migracji z użyciem narzędzi CLI. Opanowanie tych procedur pomoże bezpiecznie zarządzać danymi w środowisku lokalnym, chronić je oraz sprawnie przenosić projekty między środowiskami. Korzystając z dodatkowych funkcji ServBay — jak backup w GUI — znacząco zwiększysz efektywność pracy i bezpieczeństwo danych.