vieri_pl
28.10.2005, 18:33:57
Witam!!! Mam stronkę na serwerze bez mysqla i chciałbym aby łączyła się stronka z baza z zewnatrz wpisuje zamiast locall host ip serwera na ktorym mam baze ale nie dziala jak to zrobi?

dr_bonzo
28.10.2005, 18:43:07
Serwer ten (z mysqlem) musi ci pozwalac na zdalne polaczenie:
username@ip_serwera_z_ktorego_sie_laczysz
vieri_pl
28.10.2005, 18:45:37
Nie rozumiem zamiast localhost w połaczeniu wpisuje nazwa_userw@ip
dr_bonzo
28.10.2005, 19:34:39
Serwer z mysqlem musi miec konto usera pozwalajace mu laczyc sie z innego serwera (zazwyczaj jest to tylko localhost).
Spraawdz czy serwer z mysql'em ma takie konto: username@ip_serwera_Z_KTOREGO_laczysz_sie_z_baza, ewentualnie, username@{wszystkie IP}
escaflowne
29.10.2005, 09:04:53
3 warunki muszą być spełnione, aby aplikacja znajdująca się na serwerze A mogła się połączyć z serwerem MySQL na zdalnym serwerze B:
1) Firewall na serwerze A musi pozwalać na połączenia wychodzące na port 3306
2) Firewall na serwerze B musi pozwalać na połączenia przychodzące na port 3306
3) Użytkownik MySQL (nazwijmy go X) musi mieć prawo łączenia się z serwerem MySQL (przynajmniej) z adresu IP serwera A. Każdy użytkownik MySQL może być skonfigurowany tak, że może się łączyć z określonych (ustalonych przez administratora) adresów IP. Można to ustawić tak, że np. X będzie mógł się łączyć z MySQLem, jeżeli będzie to robił będąc na serwerze B, ale nie będzie mógł się łączyć z żadnego innego adresu IP.
Sprawdź przez mysql_error() jaki jest komunikat błędu przy próbie łącznie się ze zdalnym serwerem MySQL. Jeżeli występuje timeout, oznacza to, ze firewall na A i/lub firewall na B blokują zdalny dostęp do MySQL. Jeżeli na 100% podajesz prawidłowe dane użytkownik/hasło MySQL a mimo to dostajesz komunikat Access denied for user... oznacza to, że użytkownik X na serwerze MySQL nie może się łączyć z hostów zdalnych (np. z serwera A).