After upgrading from php 5.2 to php 5.3 on Windows, I was unable to connect to MySQL databases on localhost. I eventually tracked the problem down to entries in my hosts file:
It contained:
127.0.0.1 localhost
[...]
::1 localhost
Commenting out the second line fixed the problem.
The problem is explained here: http://bugs.php.net/bug.php?id=50172