Малко съм объркан от въпроса ти.
Стоя на прозорец
Искате да кажете, че вашият PHP код работи на MSWindows машина?
моят сървър е в UNIX
Ако сървърът на база данни и клиентът на базата данни (PHP) работят на различни машини, тогава те не могат да комуникират чрез сокети на файловата система UNIX.
Кодът по-долу работи добре, ако сървърът ми е в TCP/IP.
Не, или вашето тълкуване, или описанието на събитията е неправилно. Ако посочите 'localhost' като целеви хост в libmysql клиент (включително разширението mysql_ на PHP), тогава клиентът ще се опита да се свърже чрез (Unix) сокет на файловата система. OTOH. ако посочите 127.0.0.1, той ще използва TCP сокет.
В предишния сценарий клиентът получава пътя до сокета от ~/.my.cnf, или при липса на този файл /etc/my.cnf, или ако сами сте компилирали клиентската библиотека, $PREFIX/etc /my.cnf