Conectare la distanță la MySQL: acces la baza de date din exterior

Tipărire
  • 0

Pe scurt: site-ul găzduit la TopHost lucrează cu baza sa de date prin localhost și nu are nevoie de nicio setare în plus. Accesul de la distanță este necesar doar când un program de pe alt calculator sau alt server trebuie să lucreze direct cu baza. Din motive de securitate, firewall-ul serverului nu acceptă implicit conexiuni MySQL din exterior, de aceea accesul se deschide pentru fiecare adresă IP în parte: dvs. adăugați adresa în cPanel, iar echipa de suport o permite în firewall.

Aveți cu adevărat nevoie de acces de la distanță?

  • Pentru a vedea, modifica, exporta sau importa date ajunge phpMyAdmin din cPanel, care se deschide în orice browser. Detalii în articolul phpMyAdmin în cPanel: exportul și importul unei baze de date.
  • Accesul de la distanță își are rostul pentru programe instalate pe calculator, cum ar fi MySQL Workbench, HeidiSQL sau DBeaver, pentru programe de contabilitate sau rapoarte care citesc datele și pentru aplicații care rulează pe alt server.
  • Fiecare adresă permisă este o cale spre datele dvs. Permiteți doar adrese fixe, pe care le controlați, și ștergeți-le când lucrul s-a încheiat.

Pasul 1. Aflați adresa IP publică de la care vă veți conecta

Este nevoie de adresa IPv4 publică a calculatorului sau a serverului care va deschide conexiunea. Pe calculator o aflați căutând „what is my IP” în orice motor de căutare. Rețineți că multe conexiuni de acasă și cele mobile primesc din când în când altă adresă. Atunci accesul nu mai funcționează și noua adresă trebuie permisă din nou. Pentru un birou, o adresă IP statică de la furnizorul de internet vă scutește de această grijă.

Pasul 2. Adăugați adresa în cPanel

  1. Intrați în cPanel. Din contul de client deschideți Serviciile mele și alegeți pachetul de găzduire.
  2. În secțiunea Databases deschideți Remote Database Access (în versiunile mai vechi de cPanel se numește Remote MySQL).
  3. La Add Access Host scrieți adresa IP în câmpul Host, adăugați un comentariu scurt, de exemplu „birou”, și apăsați Add Host.

Nu introduceți doar simbolul % ca gazdă: este un caracter generic care ar accepta orice adresă din internet.

Pasul 3. Cereți deschiderea firewall-ului pentru adresa respectivă

Deschideți un tichet și menționați:

  • adresa IP publică de la pasul 1;
  • domeniul sau numele de utilizator cPanel al contului de găzduire;
  • numele complet al bazei de date și al utilizatorului bazei, cu prefix (de exemplu cpuser_shop);
  • ce anume se va conecta (un program de pe calculatorul dvs., un server propriu, aplicația unui partener).

Parola bazei de date nu trebuie scrisă în tichet. Vă răspundem imediat ce adresa a fost permisă.

Pasul 4. Completați datele de conectare în program

CâmpValoare
HostNumele domeniului, dacă acesta este îndreptat spre găzduirea TopHost, sau adresa IP a serverului, afișată în cPanel la General Information (Shared IP Address)
Port3306
UserNumele complet al utilizatorului bazei, cu prefix
PasswordParola acestui utilizator
DatabaseNumele complet al bazei de date, cu prefix

Dacă domeniul trece prin proxy-ul Cloudflare (norul portocaliu), folosiți ca host adresa IP a serverului. Proxy-ul transmite doar traficul web, nu și conexiunile MySQL.

Dacă nu se conectează

  • „Access denied for user”: numele de utilizator sau parola sunt greșite, utilizatorul nu a fost adăugat la baza de date (vedeți crearea bazei de date și a utilizatorului) sau adresa IP lipsește din Remote Database Access.
  • Timeout sau „Can't connect to MySQL server”: firewall-ul nu a fost încă deschis, adresa dvs. IP s-a schimbat sau chiar rețeaua dvs. blochează traficul de ieșire pe portul 3306 (se întâmplă des în rețelele de birou și pe Wi-Fi public).
  • A mers, apoi s-a oprit: mai multe autentificări eșuate la rând pot duce la blocarea adresei IP de către firewall. Cauzele sunt descrise în articolul de ce blochează firewall-ul serverului o adresă IP.

Tot nu merge? Scrieți-ne în același tichet mesajul exact de eroare și ora ultimei încercări.

O variantă mai sigură: tunelul SSH

Dacă pentru contul dvs. este activat SSH (vedeți conectarea la server prin SSH), MySQL Workbench, HeidiSQL, DBeaver și alte programe asemănătoare se pot conecta printr-un tunel SSH. Baza de date este accesată atunci ca de pe server, cu localhost ca host MySQL, iar portul 3306 nu trebuie deschis spre internet.

Direcția inversă: site-ul dvs. se conectează la o bază de date externă

Dacă un script de pe găzduirea TopHost trebuie să ajungă la o bază de date de pe alt server, firewall-ul poate filtra și această conexiune. Deschideți un tichet cu adresa și portul serverului respectiv, iar noi verificăm.

Articole utile

Răspunsul a fost util?