W większości przypadków serwer MySQL i główna aplikacja są hostowane na tym samym komputerze. Zatem MySQL słucha połączeń tylko z komputera lokalnego. Jednak wraz ze wzrostem systemów rozproszonych, w których aplikacja i baza danych są hostowane na osobnych serwerach, słuchanie na Localhost nie jest bardzo idealne.
Jeśli takie instancje wystąpią, programiści muszą upewnić się, że MySQL słucha połączeń zdalnych lub po prostu połączeń poza komputerem lokalnym. Możesz to zrobić na dwa sposoby:
W tym przewodniku przyjrzymy się edycji pliku konfiguracyjnego MySQL, aby zmienić adres wiązania serwera MySQL.
Wymagania wstępne
Zanim zaczniemy, upewnij się, że masz:
Po spełnieniu powyższych wymagań możemy kontynuować.
Krok 1 - Edytuj konfigurację MySQL
Pierwszym krokiem do modyfikacji adresu wiązania serwera MySQL jest edycja pliku konfiguracyjnego.
Domyślnie plik konfiguracyjny MySQL znajduje się w/etc/mysql/mysql.conf.D/Mysqld.Conf for Ubuntu 20.10
Lokalizacja pliku konfiguracyjnego może się zmienić w zależności od zainstalowanego serwera MySQL i dystrybucji Linux.
sudo vim/etc/mysql/mysql.conf.D/Mysqld.CNF
Gdy plik jest otwarty, wyszukaj wpis z treścią jako (Address Bind-Address) i zmień wartość na adres IP, na którym serwer powinien słuchać.
Domyślnie wartość jest ustawiona na LocalHost:
W moim przykładzie zmienię przyjęcie wiązania na wszystkie, co pozwala serwerze MySQL na słuchanie na wszystkich adresach IPv4.
BIND-Address = 0.0.0.0
NOTATKA: Jeśli używasz MySQL Server w wersji 8.0 i wyższe, wejście do przyjęcia wiązania może nie być dostępne. W takim przypadku możesz go dodać w sekcji [MySQLD].
Po zadowoleniu ze zmian w pliku konfiguracji zapisz zmiany i zamknij edytor.
Krok 2 - Uruchom ponownie mysql
Aby zastosować zmiany w plikach konfiguracyjnych wymaga ponownego uruchomienia usługi MySQL Server. Możesz to zrobić za pomocą SystemD jako:
sudo systemctl restart mysql.praca
Krok 3 - Zezwól na zaporę
Domyślnie MySQL słucha 3306, który czasami może blokować Twoja zapora. Aby umożliwić port serwera MySQL, użyj polecenia tabel IP jako:
sudo iptables -a wejście -p tcp - -destination -port 3306 -j Zaakceptuj
Krok 4 - Połączenie testowe
Po zakończeniu wszystkich konfiguracji możesz przetestować połączenie z serwerem MySQL.
mysql -u root -h [mysql_remote/-p] -p
Jeśli masz prawidłowo skonfigurowany serwer, powinieneś uzyskać wiersz hasła dla konkretnego użytkownika.
Wniosek
W tym szybkim samouczku przyjrzeliśmy się, jak zmienić address MySQL, aby umożliwić serwerze MySQL na słuchanie połączeń poza komputerem lokalnym. Może to być bardzo przydatne podczas pracy z systemami rozproszonymi.
Dziękuję i podziel się, jeśli samouczek ci pomógł.