Zdalne połączenie do bazy danych MySQL
Często zachodzi potrzeba aby połączyć się z bazą MySQL ze zdalnego hosta, serwera innego, niż sam serwer VPS Hostingu Dedykowanego. Aby tego dokonać, musimy wpierw zezwolić na takie zdalne połączenie MySQL z innego hosta do naszego serwera Hostingu Dedykowanego oraz otworzyć port usługi MySQL w zaporze (firewall).
W tym celu logujemy się do panelu DirectAdmin i na (1) poziomie Użytkownika przechodzimy do pozycji (2) "Zarządzanie MySQL".
Zarządzanie MySQL z poziomu DirectAdmin.
Na spisie baz danych klikamy na (1) nazwę bazy danych, której ustawienia chcemy zobaczyć.
Ustawienia bazy danych.
Dodanie IP hosta.
W pozycji "Dostęp z Hostów", dodajemy nowy host - czyli jego (1) adres IP. Z tego adresu IP będą zezwalane połączenia do MySQL. Dalej klikamy "Dodaj nową" (pozycję) (2) aby dodać ten host do listy.
Zdalne podłączenie - dodawanie IP hosta.
Jeżeli chcemy dodać możliwość łączenia się z dowolnego hostu wpisujemy znak procenta %
aczkolwiek z przyczyn bezpieczeństwa - nie jest to zalecane.
Ustawienia bazy danych. Lista dozwolonych hostów.
Następnie pojawi się (1) komunikat z wynikiem operacji, a my widzimy, że adres IP naszego hosta został dodany do listy zezwoleń "Dostęp z hosta".
Możemy dodawać więcej adresów IP hostów i zarządzać (2) listą zezwoleń usuwając niepotrzebne pozycje.
Otwarcie portu MySQL w zaporze.
To nie wszystko. Upewnij się że posiadasz otwarty porty usługi MySQL (domyślnie jest to port: 3306
) w konfiguracji zapory firewall na serwerze Hostingu Dedykowanego.
Przeczytaj nasz poradnik CSF - otwieranie portów i dodaj port 3306
w polu TCP_IN.
Testowanie połączenia MySQL.
Teraz możesz przetestować poprawność połączenia na hoście, z którego będziesz łączył się zdalnie do serwera MySQL. Użyj do tego konsoli SSH lub terminalu w systemie, gdzie jest zainstalowany pakiet MySQL.
mysql -u <użytkownik-bazy> -p -h <adres-IP-serwera>
Przykład: Poprawne połączenie:
root@host:~# mysql -u admin_ba7at3st -p -h 1.2.3.4
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 933
Server version: 10.4.25-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> quit
Bye
Przykład: brak dodania IP hosta do listy zezwoleń na połączenie:
root@host:~# mysql -u admin_ba7at3st -p -h 1.2.3.4
Enter password:
ERROR 1130 (HY000): Host '6.7.8.9' is not allowed to connect to this MariaDB server
Jak to naprawić? Dodaj IP hosta.
Przykład: brak otwartego portu MySQL:
root@host:~# mysql -u admin_ba7at3st -p -h 1.2.3.4
Enter password:
ERROR 2002 (HY000): Can't connect to MySQL server on '1.2.3.4' (115)
Jak to naprawić? Otwórz port w zaporze.