Dokumentacja techniczna OVH

Prywatny SQL

Prywatny SQL

Czym jest oferta Prywatnego SQL?

Usługa prywatnego SQL została utworzona dla klientów, którzy potrzebują dużych i specyficznych zasobów dla baz danych. Usługa ta pozwala na dysponowanie własnym serwerem bazy danych oraz na spokój związany z tym, że hosting jest zarządzany przez OVH.

  • Prywatny serwer SQL wymaga posiadania hostingu www w OVH.

Zalety Prywatnego SQL

  • Nieograniczony rozmiar baz danych (w ramach limitu przestrzeni dostępnej na serwerze)
  • 100 jednoczesnych połączeń z możliwością zwiększenia do 200
  • Wybór wersji SQL i zmiana możliwa w każdej chwili
  • Możliwość dostosowania konfiguracji serwera MySQL do potrzeb
  • Możliwość tworzenia uprzywilejowanych kont mających dostęp do kilku baz danych

Korzystaj z nielimitowanych parametrów

Korzystając z Prywatnego serwera SQL, dysponujesz zarezerwowanymi dla Ciebie zasobami, a nie zasobami współdzielonymi.

Twoja działalność nie ma wpływu na innych użytkowników. Rozmiar baz danych nie jest ograniczony. Możesz więc wybrać lepszy kompromis między rozmiarem danych i wydajnością serwera SQL.

Wybierz wersję SQL

Możesz wybrać wersję serwera SQL, której potrzebujesz podczas składania zamówienia z listy dostępnych wersji. Jeśli później będziesz chciał ją zmienić, będziesz mógł to zrobić za pomocą jednego kliknięcia w panelu klienta.

Korzystaj z automatycznych kopii zapasowych

W panelu klienta za pomocą kilku kliknięć możesz zautomatyzować wykonywanie kopii zapasowych swoich baz danych. W równie prosty sposób będziesz mógł je przywracać w przypadku problemu i w spokoju dokonywać aktualizacji.

Wystarczy włączyć usługę w panelu klienta.

Zasada działania

Prywatny SQL dysponuje swoimi własnymi zasobami (procesor, pamięć operacyjna,...) przyznanymi przez system.

Aktywacja prywatnego SQL

Jeśli posiadasz hosting Performance, możesz włączyć za darmo prywatny serwer SQL ze 128 MB pamięci RAM (zawarty w ofercie). W tym celu należy zalogować się do panelu klienta i kliknąć na nazwę hostingu.

Kliknij na "Włącz" na poziomie zapisu Prywatna baza danych.

Kliknij na "Zatwierdź". Aktywacja trwa kilka minut.

Zmiana oferty prywatnego SQL

Aby dokonać zmiany oferty Prywatnego SQL, kliknij na serwer SQL w sekcji "Hosting" (1), wybierz zakładkę "Informacje ogólne" (2). Kliknij na "Zmień ilość pamięci RAM" (3), aby otrzymać dostęp do zamówienia.

Wybierz ilość pamięci RAM i kliknij na przycisk "Dalej". W naszym przykładzie można przejść na 256 MB, 512 MB lub 1024 MB pamięci RAM.

Wybierz czas abonamentu (3, 6 lub 12 miesięcy).

System obliczy proporcjonalną opłatę biorąc pod uwagę datę wygaśnięcia Prywatnego serwera SQL. Następnie należy zapoznać się z regulaminami, zaznaczyć pole "Akceptuję regulaminy" (1) i kliknąć na "Dalej".

Ostatni etap to podsumowanie zamówienia. Kliknij na "Zatwierdź".

  • Zostaniesz przekierowany do zamówienia i będziesz mógł je opłacić. Zamówienie zostanie zrealizowane w ciągu kilku godzin od wpłynięcia płatności.

Jeśli aktualnie dysponujesz darmowym serwerem SQL w ramach hostingu Performance, po zmianie oferty serwer ten będzie odpłatny.

Tworzenie użytkownika

  • Aby korzystać z prywatnego serwera SQL, należy utworzyć użytkowników, którzy będą mieli określone uprawnienia do logowania do bazy danych.

Przejdź do zakładki "Użytkownicy i uprawnienia" (2) i kliknij na "Dodaj użytkownika" (3).

Zostaniesz poproszony o wpisanie nazwy użytkownika (1) i hasła (2). Następnie kliknij na "Zatwierdź" (3).

W górnej części panelu klienta pojawi się taki komunikat.

  • W zakładce "Użytkownicy i uprawnienia" będzie widoczna informacja, że trwa dodawanie użytkownika. Operacja ta może trwać kilka minut, ponieważ synchronizacja nie jest wykonywana w czasie rzeczywistym. Czasami trzeba kliknąć na "Aktualizuj informacje", aby odświeżyć informacje (po 5-10 minutach informacje będą widoczne).

Tworzenie bazy danych

Aby utworzyć bazę danych, kliknij na nazwę serwera w kolumnie z lewej strony (1), wybierz zakładkę "Bazy danych" (2) i "Dodaj bazę danych" (3).

Wpisz nazwę bazy danych (1) biorąc pod uwagę wskazane kryteria i kliknij na "Zatwierdź" (2).

W górnej części panelu klienta pojawi się taki komunikat.

  • Operacja ta może trwać kilka minut, ponieważ synchronizacja nie jest wykonywana w czasie rzeczywistym. Czasami trzeba kliknąć na "Aktualizuj informacje", aby odświeżyć informacje (po 5-10 minutach informacje będą widoczne).

Usuwanie bazy danych

Aby usunąć bazę danych z Prywatnego serwera SQL, , wybierz zakładkę "Bazy danych" (2), kliknij na ikonkę koła zębatego z prawej strony bazy danych i wybierz "Usuń bazę" (3).

W przypadku usuwania bazy z Prywatnego serwera SQL zawartość bazy nie jest weryfikowana. Baza zostanie usunięta, nawet jeśli znajdują się w niej dane. Zaleca się więc wykonanie kopii zapasowej przed usunięciem bazy. Następnie wystarczy zatwierdzić operację.

  • Po usunięciu bazy pojawi się taki komunikat. Operacja ta może trwać kilka minut, ponieważ synchronizacja nie jest wykonywana w czasie rzeczywistym. Czasami trzeba kliknąć na "Aktualizuj informacje", aby odświeżyć informacje (po 5-10 minutach informacje będą widoczne).

Zarządzanie uprawnieniami użytkowników

Aby zarządzać uprawnieniami każdego użytkownika, kliknij na zakładkę "Użytkownicy i uprawnienia".

Następnie wystarczy kliknąć na koło zębate z prawej strony danego użytkownika i na "Zarządzaj uprawnieniami".

W kolumnie z lewej strony odnajdziesz listę baz danych znajdujących się na Prywatnym serwerze SQL.

  • Poniżej opis 3 proponowanych uprawnień:

Odczyt / Zapis: Użytkownik może wykonywać zapytania typu SELECT, DELETE, UPDATE.

Odczyt: Użytkownik może wykonywać zapytania typu SELECT.

Brak: Użytkownik nie ma żadnych uprawnień do bazy danych.

Zmiana uprawnień danego użytkownika może zająć kilka minut.

Logowanie do bazy danych MySQL Prywatnego SQL

Link dostępowy do bazy danych znajduje się w sekcji "Administrowanie bazą danych".

Przejdź na stronę logowania do interfejsu phpMyAdmin.

  1. Serwer: Wpisz nazwę hosta serwera.

W przypadku serwerów "Legacy" należy wpisać adres IP serwera.

  1. Użytkownik: Jest to nazwa użytkownika zdefiniowana w zakładce "Użytkownicy i uprawnienia" w panelu klienta.

  2. Hasło: Wpisz hasło przypisane do tego użytkownika.

  3. Port: Informacje na temat tego portu znajdują się w zakładce "Informacje ogólne: w panelu klienta.

Nazwa serwera (nazwa hosta) i port są widoczne w panelu klienta w ramce "Połączenie SQL".

Jeśli połączenie się powiedzie, pojawi się strona interfejsu phpMyAdmin.

W przypadku błędu 1045

Jeśli pojawi się taki komunikat błędu (#1045), oznacza to, że dane do logowania są nieprawidłowe. Należy więc sprawdzić login i hasło.

W przypadku błędu 2005

W przypadku błędu #2005 należy sprawdzić nazwę serwera i czy serwer działa.

Tworzenie kopii zapasowej bazy danych

Aby wykonać kopię zapasową bazy danych, należy przejść do zakładki "bazy danych", kliknąć na ikonkę koła zębatego z prawej strony bazy danych i wybrać "Utwórz kopię zapasową".

Kopia zapasowa zostanie utworzona w ciągu kilku minut. Kopie zapasowe są przechowywane przez 30 dni. Po tym czasie są automatycznie usuwane.

Planowanie kopii zapasowej bazy danych

Aby zaplanować automatyczną kopię zapasową bazy danych na prywatnym serwerze SQL, przejdź do zakładki "Bazy danych", kliknij na ikonkę koła zębatego z prawej strony bazy oraz na "Zaplanuj kopie zapasowe".

Będziesz mógł włączyć powiadomienia na e-mail.

Etap 2. pozwala na zdefiniowanie częstotliwości wykonywania kopii.

Ostatni etap pozwala na sprawdzenie parametrów zdefiniowanych dla kopii zapasowej.

Możesz sprawdzić listę zaplanowanych kopii zapasowych w zakładce "Zaplanowane kopie zapasowe".

Pobieranie kopii zapasowej

Aby pobrać kopię zapasową, należy kliknąć na cyfrę w kolumnie "Kopie zapasowe". Cyfra ta odnosi się do liczby dostępnych kopii zapasowych bazy danych.

Pojawi się lista dostępnych kopii zapasowych. Kliknij na ikonkę w czerwonej ramce, aby pobrać kopię zapasową.

Przywracanie kopii zapasowej

Aby przywrócić kopię zapasową, kliknij na cyfrę w kolumnie "Kopie zapasowe". Cyfra ta odnosi się do liczby dostępnych kopii zapasowych bazy danych.

Pojawi się lista dostępnych kopii zapasowych. Kliknij na ikonkę w czerwonej ramce, aby przywrócić kopię zapasową.

Przywrócenie kopii zapasowej może zająć kilka minut. Operacja ta może trwać dłużej, w zależności od rozmiaru wybranej kopii zapasowej.

Eksportowanie bazy danych MySQL z poziomu interfejsu phpMyAdmin

Aby wyeksportować bazę danych bezpośrednio z interfejsu phpMyAdmin, należy się do tego interfejsu zalogować.

Następnie kliknij na nazwę bazy danych, którą chcesz wyeksportować i kliknij na przycisk "Eksportuj".

Możliwe są dwa tryby eksportowania. Zalecamy wybór trybu szybkiego w formacie SQL.

Importowanie bazy danych MySQL z poziomu interfejsu phpMyAdmin

Aby zaimportować bazę danych bezpośrednio w interfejsie phpMyAdmin, należy się do tego interfejsu zalogować.

Następnie kliknij na nazwę bazy danych i na przycisk "Importuj".

Wybierz plik kopii zapasowej klikając na "Przeglądaj" (uwaga, plik nie może przekroczyć 128 MB).

Kliknij na "Wykonaj", aby rozpocząć importowanie.

Jak wyeksportować bazę danych z linii poleceń?

  • Eksport (Docker):
mysqldump --host=serwer_sql --user=nazwa_bazy --port=Port --password=hasło nazwa_bazy > nazwa_bazy.sql
  • Eksport (Legacy):
mysqldump --host=serwer_sql --user=nazwa_bazy --password=hasło nazwa_bazy > nazwa_bazy.sql

Jak zaimportować bazę danych z linii poleceń?

  • Import (Docker):
cat nazwa_bazy.sql | mysql --host=serwer_sql --user=nazwa_bazy --port=Port --password=hasło nazwa_bazy
  • Import (Legacy):
cat nazwa_bazy.sql | mysql --host=serwer_sql --user=nazwa_bazy --password=hasło nazwa_bazy

Jak wyeksportować bazę danych z pliku PHP?

  • Eksport (Docker):
<?
echo "Votre base est en cours de sauvegarde.......";
system("mysqldump --host=serveur_sql --user=nom_de_la_base --port=Port --password=mot_de_passe nom_de_la_base > nom_de_la_base.sql");
echo "C'est fini. Vous pouvez récupérer la base par FTP";
?>
  • Eksport (Legacy):
<?
echo "Votre base est en cours de sauvegarde.......";
system("mysqldump --host=serveur_sql --user=nom_de_la_base --password=mot_de_passe nom_de_la_base > nom_de_la_base.sql");
echo "C'est fini. Vous pouvez récupérer la base par FTP";
?>

Jak zaimportować bazę danych z pliku PHP?

  • Import (Docker):
<?php
echo "Votre base est en cours de restauration.......
<br>";
system("cat nom_de_la_base.sql | mysql --host=serveur_sql --user=nom_de_la_base --port=Port --password=mot_de_passe nom_de_la_base");
echo "C'est fini. Votre base est en place sur cet hébergement.";
?>
  • Import (Legacy):
<?php
echo "Votre base est en cours de restauration.......
<br>";
system("cat nom_de_la_base.sql | mysql --host=serveur_sql --user=nom_de_la_base --password=mot_de_passe nom_de_la_base");
echo "C'est fini. Votre base est en place sur cet hébergement.";
?>

Serwer typu Legacy

Przejdź na tę stronę, aby uzyskać informacje na temat typu serwera.

Połączenie FTP na prywatnym serwerze SQL

  • Net2Ftp

Aby zalogować się do FTP na prywatnym serwerze SQL typu "Legacy" przez Net2FTP, przejdź na tę stronę:

http://sqlprive.ovh.net/ftp

W polu Username wpisz nazwę prywatnego serwera SQL. Następnie podaj hasło "FTP" prywatnego SQL. Jeśli pole Initial directory pozostawisz puste, zalogujesz się do katalogu głównego FTP.

  • Logowanie za pomocą klienta FTP (Filezilla)

Musisz podać jako nazwę hosta sqlprive.ovh.net, jako nazwę użytkownika nazwę prywatnego serwera SQL w formie sqlprive-XXXX-0XX oraz hasło.

Zmiana hasła

Hasło FTP prywatnego serwera SQL typu "Legacy" można zmienić w zakładce "Informacje ogólne" klikając na "Zmień hasło".

Następnie należy zrestartować serwera. Zmiana zacznie obowiązywać po kilku minutach.

Konfiguracja pliku my.cnf

Aby zmodyfikować plik my.cnf na starych prywatnych serwerach SQL typu "Legacy", należy zalogować się do FTP i dokonać zmian w pliku.

Po dokonaniu zmian zapisz plik i wykonaj restart.

Aby wykonać restart, kliknij na "Zatrzymaj" (operacja ta może zająć kilka sekund), a następnie na "Zrestartuj" serwer.

Serwer typu Docker

Przejdź do zakładki "Konfiguracja". W części "Ogólna konfiguracja MySql" odnajdziesz aktualna konfigurację zdefiniowana w pliku my.cnf. Możesz ją zmienić, klikając na "Edytuj".

Wprowadź konieczne zmiany i kliknij na "Potwierdź".

Uwaga!

Każda zmiana wymaga restartu serwera.

Dostęp do logów serwera

Czym są Slow Logs?

Logi te zawierają zbyt długie zapytania SQL.

  • Serwer typu Legacy:

Aby otrzymać tego typu logi, należy dodać poniższe linie w pliku my.cnf:

slow_query_log = 1
slow_query_log_file = /home/mysql/slow.log

Logi serwera SQL znajdują się w pliku sqlprive.log zlokalizowanym w katalogu /home/mysql/ na FTP prywatnego SQL.

Zalecamy regularne czyszczenie lub usuwanie tego pliku, aby uniknąć przeciążenia serwera SQL.

  • Serwer typu Docker:

Aby otrzymać tego typu logi, należy je pobrać z głównego katalogu serwera FTP prywatnego serwera SQL Docker po zalogowaniu przez SFTP. Zapoznaj się z tym przewodnikiem:

Optymalizacja baz danych

Aby baza danych była wydajna, należy ją optymalizować. Chodzi o to, żeby informacje zawarte w bazie były jak najszybciej zwracane do skryptu, który je odpytuje.

Sprawdzimy, jak zoptymalizować bazę danych.

Indeksowanie bazy danych

Aby zwiększyć szybkość wyszukiwania podczas zapytania, należy umieścić index w polach, które są używane w klauzulach WHERE.

Przykład: Często wyszukujesz osoby biorąc pod uwagę miasto. Należy wprowadzić index dla pola "miasto" za pomocą poniższego polecenia:

ALTER TABLE `test` ADD INDEX ( `miasto` );

Czyszczenie bazy danych

Niektóre z danych nie są już weryfikowane. Może warto je zarchiwizować? Tabele będą zajęte w mniejszym stopniu a wyszukiwania będą działać szybciej.

Ograniczenia wyświetlania

Możesz ograniczyć wyświetlanie wpisów do określonej liczby (na przykład 10 na stronę) korzystając z części LIMIT zapytania SQL.

Grupowanie zapytań

Możesz grupować zapytania na początku skryptu w ten sposób:

connexion_base
requete1
requete2
...
déconnexion_base
Affichage ...
Traitement des données
Boucles ...
Affichage ...
...

Optymalizacja za pomocą pamięci cache

Jeśli masz elementy, które są pobierane z bazy danych i które się nie zmieniają, umieść je w pamięci cache.

Zastosowanie tego rozwiązania zmniejszy czas dostępu do bazy danych i przyspieszy ładowanie strony.

Możesz również wprowadzić cache dla sesji. Chodzi o umieszczenie wyników zapytań w zmiennej sesji. Przy kolejnym identycznym zapytaniu nie będziesz go wykonywał. Zamiast tego pobierzesz zmienne sesji.

Pobieranie jedynie użytecznych danych

Sprawdź, czy wybierasz tylko te zapytania SQL, których potrzebujesz i czy nie zapomniałeś o połączeniach między tabelami.

Przykład:

(where table1.champs = table2.champs2)

Unikanie opcji wykorzystujących dużo zasobów

Unikaj opcji takich jak "HAVING". Opcja ta sprawia, że zapytania są cięższe. Unikaj również opcji "GROUP BY", chyba że jest to konieczne.

Zmiana wersji Mysql

Jeśli chcesz sprawdzić wersję MySQL prywatnego serwera SQL, przejdź do zakładki "Informacje ogólne" po wybraniu prywatnego serwera SQL.

  • Aktualna wersja pojawi się w linii "Wersja".

Aby zmienić wersję, wystarczy kliknąć na "Zmień wersję".

  • Przed migracją na wyższą wersję upewnij się, że Twoja baza danych jest kompatybilna z tą wersją.
  • Zmiana nastąpi w ciągu kilku minut.

Jeśli korzystasz już z wersji MySQL 5.5, nie będziesz mógł jej zmienić, ponieważ jest to najnowsza proponowana wersja.

Czy mój serwer SQL to serwer typu "Legacy" czy "Docker"?

Stare prywatne serwery SQL to serwery typu "Legacy" (przykład: sqlprive-kx11111-009), nowe serwery to serwery typu "Docker" (przykład: sx11111-012). Są to dwie różne infrastruktury.

Czy na moim serwerze SQL może pojawić się problem z błędną datą?

  • Jest to znany błąd w wersji Mysql 5.1.31. Rozwiązaniem tego problemu jest przejście na wersję 5.5.14.

Czy mogę zalogować się do prywatnego serwera SQL jako Root?

  • Jest to możliwe tylko na serwerach typu Legacy.

Jak można sprawdzić rozmiar baz danych?

  • Rozmiar baz danych pojawia się w zakładce "Bazy danych" w kolumnie "Wykorzystana przestrzeń".

Jak usunąć bazę danych lub użytkownika?

  • Należy przejść do zakładki "Użytkownicy i uprawnienia" lub "Bazy danych", kliknąć na ikonkę koła zębatego i wybrać "Usuń".

Jak mogę sprawdzić pamięć RAM wykorzystaną na serwerze?

  • W przypadku serwerów SQL typu "Docker" możesz odnaleźć te informacje w sekcji "Metryki" w panelu klienta.

  • Informacje te nie są dostępne dla serwerów typu "Legacy".

Jak uzyskać logi dla serwera?

  • Aktualnie wyświetlenie tego typu informacji nie jest możliwe w panelu klienta.

Czy mogę wprowadzić restart prywatnego serwera SQL jako zadanie CRON?

  • Aktualnie nie proponujemy takiej możliwości.

Czy można zduplikować bazę danych?

  • Taka funkcjonalność nie jest jeszcze dostępna w panelu klienta.

Czy kopie zapasowe baz danych są przechowywane na moim prywatnym serwerze SQL?

  • Kopie zapasowe baz danych nie są przechowywane na Twoim prywatnym serwerze SQL, więc nie wykorzystują przestrzeni dyskowej. Kopie są przechowywane w naszej infrastrukturze przez 30 dni.

Dlaczego na mojej stronie www pojawia się komunikat "Too many connections"?

  • Jest to związane z przekroczeniem liczby jednoczesnych połączeń na prywatnym serwerze SQL. Możesz zwiększyć parametr "MaxConnections" zmieniając serwer.

Inne przewodniki, które mogą Cię zainteresować...