localhost
ist etwas Besonderes in MySQL, es bedeutet eine Verbindung über einen UNIX-Socket (oder Named Pipes unter Windows, glaube ich) im Gegensatz zu einem TCP/IP-Socket. Mit %
da der Host localhost
nicht enthält , daher muss es explizit angegeben werden.