Certains packages OSX ne créent pas de postgres compte de base de données de superutilisateur. Le superutilisateur est nommé différemment, dans votre cas c'est main .
Lorsque vous faites psql -U main sans spécifier de base de données, il prend par défaut le même nom que l'utilisateur.Si vous n'avez pas de base de données nommée main , indiquez une base de données différente avec le -d option.
Si vous n'avez pas de base de données à laquelle vous connecter, utilisez template1
psql -U main -d template1
Si vous souhaitez toujours accorder un superutilisateur à postgres , faites une fois connecté à psql :
alter user postgres superuser;