Wprawdzie na dzisiejszy wpis (wcześniej) wybrałem innym temat, to Łukasz swoimi bojami, by móc zdalnie zarządzać bazami MySQL za pomocą aplikacji HeidiSQL sprawił, że postanowiłem ten temat przesunąć kilka(dziesiąt) miejsc do przodu…
Spis treści w artykule [rozwiń]
HeidiSQL – zarządzanie bazami danych
Program HeidiSQL jest dostępny bezpłatnie na urządzenia z systemem Windows (choć dzięki Wine można go uruchomić również na systemach Linux i nowszych wersjach MacOS X), i pozawala zarządzać trzema popularnymi bazami danych:
- MySQL
- Microsoft SQL
- PostgreSQL
Jak już wspomniałem – dzięki programowi możemy połączyć się np. z serwerem MySQL pracującym na innym urządzeniu (komputerze/serwerze), choć oczywiście nic nie stoi na przeszkodzie, by korzystać z programu również do łączenia się z lokalną bazą danych (znajdującą się na tym samym komputerze).
Osobiście korzystam z niego do łączenia się ze zdalnymi bazami danych na 2 sposoby:
Połączenie po TCP/IP
Połączenie po TCP/IP, czyli przez internet lub sieć LAN jest chyba najprostszą metoda – wystarczy, że podamy adres IP (lub nazwę hosta) z którym się chcemy połączyć, i do tego nazwę użytkownika i hasło do zarządzania bazą danych (użytkownik SQL):
Warto pamiętać tylko o kilku warunkach jakie muszą być spełnione, by takie połączenie doszło do skutku:
- Użytkownik SQL (np. MySQL) musi mieć uprawnienia do łączenia się z naszego adresu/hosta
- Jeśli na serwerze jest jakiś firewall (np. UFW) należy pamiętać o odblokowaniu odpowiedniego portu (np. 3306 dla MySQL)
- Jeśli łączymy się z serwerem SQL (np. MySQL) który znajduje się za NATem (routerem) może być konieczne przekierowanie odpowiedniego portu (np. 3306 dla MySQL)
Prostota tego rozwiązania (połączenia) sprawia, że możemy w ten sposób połączyć się właściwie z każdym serwerem SQL, również na hostingu współdzielonym.
Tunel SSH
W przypadku, gdy serwer SQL znajduje się na komputerze/serwerze do którego mamy również dostęp po SSH, można skorzystać z tunelu SSH, co powinno zapewnić trochę większe bezpieczeństwo połączenia, a zarazem nie musimy na serwerze odblokowywać dodatkowych portów.
W pierwszym kroku konfiguracja jest bardzo podobna, z tym, że jako typ połączenia wybieramy „MySQL (SSH tunnel)” – dalej identycznie, czyli adres serwera SQL, nazwę użytkownika SQL i hasło.
Co istotne – w tym przypadku adres serwera SQL ustawiamy na localhost lub 127.0.0.1:
W przypadku tego typu połączenia obowiązkowo musimy również uzupełnić dane związane z samym połączeniem SSH, czyli adres i port serwera, nazwę i hasło użytkownika SSH.
Niezbędne będzie również wskazanie ścieżki do pliku „plink.exe”, wchodzącego w skład aplikacji/pakietu PuTTY:
Kolejnym prawdopodobnie niezbędnych elementem – bez którego prawdopodobnie nie uda Wam się połączyć z bazą danych – będzie podanie „portu lokalnego”, np. dla MySQl będzie to 3307.


- Wtyczka BackWPup w wersji 5.x to doskonały przykład, jak wylać dziecko z kąpielą i z relatywnie świetnego narzędzia zrobić właściwie bezwartościowego gniota - 1970-01-01
- Testowy przelew w Bitcoinach z najniższą prowizją, czyli krótka historia o tym, jak zamroziłem BTC na (ponad) rok - 1970-01-01
- Nowy system kopii zapasowych w Home Assistant 2025.1 to zapewne krok w dobrym kierunku, ale zdecydowanie przedwczesny - 1970-01-01
Dziękuję za szybką reakcję i pomoc :)
Okazało się, że w ustawieniach dałem nr ip maliny zamiast localhost. Pewnie z braku zrozumienia mechanizmu. Teraz wszystko śmiga :)
Pewnie jeszcze komuś się to przyda…
Pozdrawiam Autora
To dla innych, by to podsumować: przy połączeniu TCP/IP adres bazy to IP serwera (my)SQL, przy połączeniu SSH (tunel SSH) do serwera (my)SQL adresem bazy będzie localhost/127.0.0.1