На повечето *nix сървъри "localhost" се обработва чрез Unix стил сокет. Ако вместо това използвате 127.0.0.1, той ще използва TCP/IP. Опитайте това или се уверете, че вашият клиент и сървър използват един и същ адрес на сокет и че това всъщност е използваем *nix сокет.
Има конфигурационен параметър в database.yml, който ви позволява да зададете адреса на сокета, уверете се, че имате достъп и до директорията.