MariaDB: Zaawansowane użycie

Jak konfigurować, optymalizować, eksportować lub importować dane MariaDB

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie MariaDB cloud, które zapewnia wiele korzyści, w tym:

  • Nieograniczone połączenia i transfery.
  • Włączony interfejs webowy phpMyAdmin.
  • Bezproblemowe aktualizacje jednym kliknięciem.
  • Optymalna wydajność i solidne zabezpieczenia dzięki prywatnej i dedykowanej VM.

Oszczędzaj czas i upraszczaj swoje życie: wypróbowanie rozwiązania MariaDB cloud hosting Stackhero zajmuje tylko 5 minut!

W Stackhero nie obowiązuje sztywny limit liczby jednoczesnych połączeń, które może obsłużyć Twój serwer. Masz możliwość dostosowania tej wartości bezpośrednio z poziomu swojego panelu Stackhero.

Chociaż może wydawać się kuszące ustawienie bardzo wysokiego limitu połączeń, warto wybrać liczbę odpowiadającą rzeczywistemu zapotrzebowaniu. Każde połączenie zużywa pamięć operacyjną (RAM), więc zbyt wysoki limit może doprowadzić do wyczerpania zasobów i potencjalnego awarii systemu.

Jeśli Twoja baza danych korzysta z silnika magazynowania InnoDB, możesz włączyć opcję "InnoDB Optimizations" w panelu. Pozwoli to poprawić wydajność dla obciążeń opartych na InnoDB.

Dla baz danych opartych na silniku MyISAM, aktywacja opcji "MyISAM Optimizations" również może przynieść korzyści.

Jeśli nie masz pewności, która opcja będzie najlepsza dla Twojej konfiguracji, zazwyczaj bezpiecznie jest na początku włączyć obie. Następnie, monitorując zużycie zasobów i wydajność, możesz zdecydować o wyłączeniu jednej lub obu, aby oszczędzić pamięć RAM.

Query cache w MariaDB to przydatna funkcja, którą możesz aktywować bezpośrednio z panelu Stackhero. Zazwyczaj zaleca się pozostawienie jej włączonej. Jednak jeśli Twoja baza danych wykonuje więcej operacji zapisu niż odczytu lub chcesz zminimalizować zużycie pamięci, możesz rozważyć jej wyłączenie.

Narzędzia wiersza poleceń MariaDB, takie jak mysql i mysqldump, są niezbędne do zadań takich jak importowanie czy eksportowanie danych.

Uruchamianie tych narzędzi w kontenerze Docker upraszcza konfigurację, zwłaszcza jeśli chcesz uniknąć instalowania oprogramowania bezpośrednio na swoim komputerze.

Jeśli Docker nie jest częścią Twojego workflow, to żaden problem! Możesz wypróbować Code-Hero na Stackhero. Code-Hero to w pełni funkcjonalna platforma deweloperska działająca bezpośrednio w przeglądarce, więc nie ma potrzeby instalacji lokalnej. Więcej o możliwościach tej platformy oraz jak zacząć w kilka minut znajdziesz na stronie Code-Hero na Stackhero.

Aby rozpocząć pracę z Dockerem, możesz uruchomić kontener MariaDB za pomocą poniższego polecenia:

docker run -it -v $(pwd):/mnt mariadb:<MARIADB_VERSION> /bin/bash

Zamień <MARIADB_VERSION> na konkretną wersję MariaDB, której potrzebujesz. Jeśli Twoja aplikacja korzysta z wersji 10.11.6-0 MariaDB na Stackhero, możesz użyć wersji 10.11.6 (wystarczy pominąć końcówkę -0).

Po uruchomieniu kontenera możesz sprawdzić połączenie za pomocą:

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT>

Po starcie kontenera Twój bieżący katalog zostaje zamontowany jako /mnt w środku kontenera (dzięki $(pwd):/mnt). Oznacza to, że każdy plik z Twojego aktualnego katalogu na komputerze będzie widoczny w /mnt w kontenerze. Na przykład, jeśli chcesz wykonać kopię zapasową bazy danych MariaDB na swój komputer, możesz uruchomić poniższe polecenie w kontenerze, aby zapisać backup jako /mnt/<DATABASE>.sql:

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > /mnt/<DATABASE>.sql

Możesz użyć narzędzia mysqldump CLI ze swojego komputera, aby wykonać zrzut bazy danych. Szczegółowe instrukcje znajdziesz w sekcji powyżej.

Aby wyeksportować bazę danych ze swojej instancji Stackhero na komputer, użyj poniższego polecenia:

mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > <DATABASE>.sql

Pamiętaj, aby zastąpić <XXXXXX>.stackhero-network.com, <PORT> oraz <DATABASE> swoimi danymi. Po naciśnięciu Enter mysqldump poprosi o hasło użytkownika root, a następnie wyeksportuje wszystkie tabele z bazy do pliku <DATABASE>.sql.

Aby zaimportować bazę danych ze swojego komputera do instancji Stackhero, użyj:

mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> < yourDump.sql

Wystarczy, że zamienisz yourDump.sql na plik SQL, który chcesz zaimportować do swojej instancji Stackhero.