Bạn không nói nhưng tôi đoán bạn đang chạy postgres trên MacOS hoặc Linux.
Dạng đầu tiên (không có -h) kết nối thông qua một "ổ cắm unix". Dạng thứ hai, với "-h localhost" kết nối qua TCP / IP tới localhost (địa chỉ IP 127.0.0.1).
Postgres xử lý hai loại kết nối này khác nhau - hoặc ít nhất, nó có thể làm như vậy. Nếu bạn kiểm tra tệp "pgsql / data / pg_hba.conf" để xem cơ chế xác thực nào được định cấu hình cho hai loại kết nối.