PHP próbuje otworzyć połączenie z hostem lokalnym. Ponieważ Twój komputer jest podłączony do sieci przez IPv6, najpierw wypróbowuje wersję IPv6 „localhost”, czyli adres IP ::1
http://en.wikipedia.org/wiki/IPv6_address#Special_addresses
Wygląda na to, że Twój serwer MySQL nie nasłuchuje tego adresu, zamiast tego jest powiązany tylko z adresem IPv4, więc gdy PHP nie uda się otworzyć połączenia, cofa się i próbuje otworzyć localhost przez IPv4 czyli 127.0.0.1
Osobiście wolę używać albo adresów IP, albo używać eteru pliku hostów Windows lub odpowiednika Maca, aby zdefiniować „fałszywe” nazwy domen, a następnie używać ich podczas łączenia się z MySQL, które są tłumaczone na adresy IP. Tak czy inaczej, mogę dokładnie wiedzieć, czy zostanie użyty adres IPv4 czy IPv6.
Zarówno MySQL, jak i Apache obsługują IPv6, ale musisz im powiedzieć, aby jawnie używali adresu IPv6. Dla MySQL zobacz:http://dev.mysql .com/doc/refman/5.5/en/ipv6-server-config.html
W przypadku konfiguracji Apache zobacz:http://httpd.apache.org/docs/2.2/ bind.html
Apache obsługuje wiele adresów IP, więc możesz używać obu jednocześnie - jeśli karta sieciowa w komputerze ma zarówno adres IPv4, jak i IPv6. MySQL obsługuje tylko jeden adres.