Jestem trochę zdezorientowany twoim pytaniem.
Stoję na oknie
Czy masz na myśli, że Twój kod PHP działa na komputerze z systemem MSWindows?
mój serwer jest w systemie UNIX
Jeśli serwer bazy danych i klient bazy danych (PHP) działają na różnych komputerach, nie mogą komunikować się przez gniazda systemu plików UNIX.
Poniższy kod działa dobrze, jeśli mój serwer jest w TCP/IP.
Nie, Twoja interpretacja lub opis wydarzeń jest nieprawidłowy. Jeśli określisz 'localhost' jako host docelowy w kliencie libmysql (włącznie z rozszerzeniem PHP mysql_), to klient spróbuje połączyć się przez gniazdo systemu plików (Unix). OTO. jeśli podasz 127.0.0.1, użyje gniazda TCP.
W poprzednim scenariuszu klient pobiera ścieżkę do gniazda z ~/.my.cnf lub w przypadku braku tego pliku /etc/my.cnf, lub jeśli sam skompilowałeś lib klienta, $PREFIX/etc /my.cnf