Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Połączenie z bazą z drugiego komputera w tej samej sieci lokalnej.
Forum PHP.pl > Forum > Przedszkole
osa2t
Witam,

Mam komputer z systemem CentoOS. Na nim zainstalowane mysql+Apache+php (192.168.1.10). Gdy piszę skrypty php do zarządzania mysql na tam samym komputerze, przy podaniu danych IP jako „localhost” wszytko jest OK, jeżeli chodzi o wyciągnięcie danych z SQL. w obecnej chwili mam drugi komputer z Apache w tej samej sieci lokalne (192.168.1.20)j. Problem polega na tym że nie mogę połączyć się z bazą danych z pierwszego komputera, skrypt php jest identyczny tylko zamiast localhost wpisuje 192.168.1.10 i wyskakuje mi błąd. Czy trzeba coś zmienić w ustawieniach pierwszego komputera, żeby połączenie mysql było dostępny na innym?
wNogachSpisz
Najczęstszy powód to domyślne ustawienia MySQL pozwalające wyłącznie na połączenia localhost, będzie miło jak wkleisz co głosi błąd.
osa2t
Otrzymuje taki bład:

  1. // nawiazujemy polaczenie
  2. $connection = @mysql_connect('192.168.1.10', 'root', '')
  3. // w przypadku niepowodznie wyświetlamy komunikat
  4. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());


  1. Brak połšczenia z serwerem MySQL.
  2. Błšd: Host '192.168.1.10' is not allowed to connect to this MySQL server
john_doe
w pliku konfiguracyjnym Apacha jest cos takiego jak

<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
</Directory>

zobacz co tam masz wpisane między znacznikami Directory questionmark.gif

albo może widzę jeszcze coś takiego w pliku httpd.conf oczywiście

# onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1

może tutaj
daj allow from all i restart servera
nospor
tu nie chodzi o apacha a o to, ze baza ma ustawione by wpuszczac tylko z localhosta

@osa2t musisz powiedziec bazie by pozwalała też na dostęp nie tylko z localhost
osa2t
Chodzi o konfiguracje pliku my.cnf?

W CentOS znajduję się /etc/my.cnf
Jego zawartość wygląda tak:

  1. [mysqld]
  2. datadir=/var/lib/mysql
  3. socket=/var/lib/mysql/mysql.sock
  4. user=mysql
  5. # Default to using old password format for compatibility with mysql 3.x
  6. # clients (those using the mysqlclient10 compatibility package).
  7. old_passwords=1
  8.  
  9. [mysqld_safe]
  10. log-error=/var/log/mysqld.log
  11. pid-file=/var/run/mysqld/mysqld.pid


Niestety nie widzę nic tutaj co ogranicza bazę tylko do połączeń localhost.
nospor
nie, chodzi o to:
http://dev.mysql.com/doc/refman/5.1/en/grant.html
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.